Java编程中的构造函数链接
构造函数链接是指从其他构造函数调用一个构造函数。它有两种类型。
在相同的类中-使用this()关键字引用当前类的构造函数。确保这this()是构造函数的第一个语句,并且至少应有一个不使用该this()语句的构造函数。
从超级/基类-使用super()关键字引用父类构造函数。确保这super()是构造函数的第一条语句。
示例
class A {
public int a;
public A() {
this(-1);
}
public A(int a) {
this.a = a;
}
public String toString() {
return "[ a= " + this.a + "]";
}
}
class B extends A {
public int b;
public B() {
this(-1,-1);
}
public B(int a, int b) {
super(a);
this.b = b;
}
public String toString() {
return "[ a= " + this.a + ", b = " + b + "]";
}
}
public class Tester {
public static void main(String args[]) {
A a = new A(10);
System.out.println(a);
B b = new B(11,12);
System.out.println(b);
A a1 = new A();
System.out.println(a1);
B b1 = new B();
System.out.println(b1);
}
}输出结果
[ a= 10] [ a= 11, b = 12] [ a= -1] [ a= -1, b = -1]