有人告诉我调用构造函数的方式是 type object_variable = new type 即:
Fraction f1 = new Fraction( 2, 3 );
但我还在 stackoverflow 上读到调用构造函数的方法是使用“this”。方法。哪种方式正确或两种方式都可以接受?因此,在下面的这个例子中,第一行或 one.denominator 部分是对构造函数的调用吗?:
1 public static Fraction addFraction( Fraction one, Fraction two ) {
2 int commonDenom = one.denominator * two.denominator;
3 int newNumerator = one.numerator * two.numerator +
4 two.numerator * one.numerator;
5 return new Fraction( newNumerator, commonDenom );
}
最佳答案
一个类可能有两个具有不同参数列表的构造函数。您可以使用 this()
从同一类的另一个构造函数调用一个构造函数。
例如
public class Foo {
private final String value;
public Foo() {
this("default");
}
public Foo(String value) {
this.value = value;
}
}
创建新对象时,永远不会使用 new this()
,只需使用 new Foo()
或 new Foo("myValue")
.
关于java - java中调用构造函数的方法,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17538093/