这里有一个java代码片段,这让我想知道wait()和this.wait()调用之间有什么区别。
假设您有一个具有获取资源的方法的类,并且它是同步的。通常,如果资源不可用,我会在while循环中编写while,但是如果调用this.wait()会发生什么呢?谁的显示器会被封锁?类对象或资源的监视器?"this"语句所指的对象是哪个?
对不起,问这个超级基本的问题,但我找不到任何帮助通过谷歌。
谢谢你的帮助!
发布于 2014-07-23 18:02:45
在这种情况下没有任何区别,this.wait()和wait()将调用相同的方法。
看看oracle中关于文档关键字的this。
从文件中:
在实例方法或构造函数中,此是对当前对象的引用--该对象的方法或构造函数正在被调用。通过使用这个,您可以从实例方法或构造函数中引用当前对象的任何成员。
发布于 2014-07-23 18:06:55
this关键字引用类的当前实例,而且由于从对象本身调用wait()已经引用了当前实例的函数,所以wait()和this.wait()在您的示例中没有区别。
https://stackoverflow.com/questions/24917656
复制相似问题