关于java:使用Object o = new Object()

use of Object o = new Object()

我用过-

1
Object o = new Object();

对于线程同步,这是很有帮助的,因为使锁对象私有化会封装锁,这样客户端代码就无法获取它,但不知道其他用途。对象类不是抽象类的其他原因是什么?在哪种情况下我可以使用上面的代码?


创建一个通用对象的主要实用工具是利用它的锁定功能(例如,wait()notify())。但这可能就是您所说的"拒绝服务",因为使用这些方法可以帮助管理线程,并可能有助于防御DOS。(但这确实是应用程序特有的,而不是对象内这些方法的固有目的)

这里已经详细讨论了对象不抽象的原因:

为什么java.lang.object不是抽象的?