import java.util.ArrayList;
import java.util.Arrays;
public class Person {
int num = 20;
public Person(){
this(2);
}
public Person(int n){
this(12,34);
}
public Person(int n,int m){
System.out.println("这是父类的构造函数");
}
}
class Student extends Person{
public Student(){
this(3);
}
public Student(int n){
System.out.println("这是子类的构造方法");
}
public void methodA(){
System.out.println("AAA");
}
public void methodB(){
this.methodA();
System.out.println("BBB");
}
public static void main(String[] args) {
Student student = new Student();
student.methodB();
}
}
运行结果:
注意事项:this用在构造方法里面的时候,this后面直接加参数,不用.方法名,但是用在普通方法的时候要.方法名以及参数。
在继承的时候,new对象就会默认调用对象类的构造方法,如果此类是子类,也会调用父类的构造方法。即便构造方法里有this,也会赠送super。