我正在阅读有关 private 的内容,我发现了这段代码...我不明白为什么当我输入 obj == 0
或 obj == 1
时出现错误并且该代码不起作用,但它仅在 obj == null
时起作用。
你能向我描述一下代码是如何工作的以及为什么它在 obj == null
时才工作吗?
package person;
public class Cat {
private static Cat obj = null;
public Cat object () {
if(obj == null){
obj = new Cat();
}
return obj;
}
public void display() {
System.out.print("obj is null");
}
public static void main(String[] args) {
Cat myobj = new Cat();
myobj.display();
}
}
输出为
obj is null
谢谢
最佳答案
你不能将 cat 引用指向 int 原语,这是没有意义的。
它适用于 null,因为所有引用都可以设置为 null。 Null 只是意味着引用没有指向任何内容。
关于java - 为什么我的代码在 obj==null 时才有效?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32632406/