super关键字的三种用法
1.在子类的成员方法中,访问父类的成员变量
2.在子类的成员方法中,访问父类的成员方法
3.在子类的构造方法中,访问父类的构造方法
注意:this(…)调用也必须是构造方法中的第一个语句,也是唯一一个
public class Fu {
int num=30;
public Fu(){
System.out.println("父类构造方法");
}
}
public class Zi extends Fu{
public Zi(){
super();//jvm默认书写
System.out.println("子类构造方法");
}
int num=10;
public void method(){
int num=20;
System.out.println(super.num);//父类中的成员变量30
System.out.println(num); //局部变量 20
System.out.println(this.num);//本类中的成员变量10
}
}
this关键字的三种用法
1.在本类的成员方法中,访问本类的成员变量
2.在本类的成员方法中,访问本类的另一个成员方法
3.在本类的构造方法中,访问本类的另一个构造方法
注意:this(…)调用也必须是构造方法中的第一个语句,也是唯一一个
super(…)和this(…)调用不可同时使用
public class Zi extends Fu{
public Zi(){
this(20);//在本类的无参构造方法中,调用本类的有参构造方法
System.out.println("子类无参构造方法");
}
public Zi(int num){
System.out.println("子类有参构造方法");
}
}