以下代码的合法用途是什么?
Object o =new Object();
据我所知,这个对象没有用处,也没有携带任何真实数据(除了它的哈希码)。为什么要用这个?这是可以接受的做法吗?如果我能够做到这一点,我是否可以显式扩展对象类。
最佳答案
From what I understand this object has no use and carries no real data (except for maybe its hash code)
对象带有它的身份和它的 monitor .这就是为什么使用此赋值来创建与对象本身分离的对象监视器的原因。
Why would this be used? Is it acceptable practice?
我见过的唯一用途是将一个对象用作其他对象的监视器。
If I am able to do this could I explicitly extend the object class?
当然。您可以扩展匿名类中的对象,如下所示:
Object obj = new Object() {
@Override
public String toString() {
return "Hello, world!";
}
};
关于java - 对象构造函数是否有合法用途?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38003977/