如何在Java中从另一个构造函数调用一个构造函数?

是否可以从另一个(在同一个类中,而不是从子类)调用构造函数?如果是如何?什么是最好的方法来调用另一个构造函数(如果有几种方法来做它)?
最佳答案
是的,有可能:

public class Foo {
    private int x;

    public Foo() {
        this(1);
    }

    public Foo(int x) {
        this.x = x;
    }
}

要链接到特定的超类构造函数而不是同一个类中的一个,使用super而不是这个。注意,你只能链接到一个构造函数,它必须是你的构造函数体中的第一个语句。

参见this related question,这是关于C#,但同样的原则适用。

转载注明原文:如何在Java中从另一个构造函数调用一个构造函数? - 代码日志