Find centralized, trusted content and collaborate around the technologies you use most.
Teams
Q&A for work
Connect and share knowledge within a single location that is structured and easy to search.
一个类可以有一个自身的对象作为属性吗?
这不应该导致无限循环和爆炸吗?
public class MyClass() { private MyClass classy; }
原样
你可以拥有它!!!
不过有了这个
public class MyClass() { private MyClass classy = new MyClass(); }
你会有问题 ( java.lang.StackOverflowError)
java.lang.StackOverflowError
那是因为在第一种情况下,您只有一个type MyClass的局部变量。现在在第二种情况下,当您尝试实例化它时,就会出现一种无限循环并且 JVM 抱怨
MyClass