public class Clown {
boolean standing = false;
public Clown(boolean standing) {
Clown clown = new Clown(standing);
}
我想用传入的布尔值创建一个新的Clown对象,但是每次运行此命令时,都会出现堆栈溢出错误。我怎样才能解决这个问题?
最佳答案
之所以获得StackOverflow
Exception
,是因为从自身调用构造函数时您正在执行“递归”调用。
做:
public class Clown {
boolean standing;
public Clown(boolean standing) {
this.standing = standing;
}
然后从某个类的某个方法创建
Object
:Clown clown = new Clown(standing);