public class A { int i; A() { System.out.println("A的带String参数的构造方法");//在空构造方法中打印一句话 } A(int i) { this.i = i; System.out.println("i"); } A(String a) { this(); }
public static void main(String[] args) { //用A的带String参数的构造方法new一个对象,看看打印的结果,就知道调用的是那个构造方法了 new A("test"); } }
上段代码的this()指的是类A的无参构造方法A(){}.其实this()就相当于A();
this 指针 用来指向当前对象,你代码中的当然是当前对象的构造函数 即 构造函数A(){}
this(Integer.valueof(a))就指的是A(int i){this.i=i;}了
super()相当于 parent()
public class A {
int i; A() {
System.out.println("A的带String参数的构造方法");//在空构造方法中打印一句话
} A(int i) {
this.i = i;
System.out.println("i");
} A(String a) {
this();
}
public static void main(String[] args) {
//用A的带String参数的构造方法new一个对象,看看打印的结果,就知道调用的是那个构造方法了
new A("test");
}
}