/*
super关键字的用法有三种:
1.在子类的成员方法中,访问父类的成员变量。
2.在子类的成员方法中,访问父类的成员方法。
3.在子类的构造方法中,访问父类的构造方法。
*/
public class Zi extends Fu {
int num = 20;
public Zi(){
super();
}
public void methodZi(){
System.out.println(super.num); //父类中的num
}
public void method(){
super.method(); //访问父类中的method
System.out.println("子类方法");
}
}
public class Fu {
int num = 10;
public void method(){
System.out.println();
}
}
与this的对比
super关键字用来访问父类内容,而this 关键字用来访问本类内容,用法也有三种:
1.在本类的成员方法中,访问本类的成员变量。
2.在本类的成员方法中,访问本类的另一个成员方法。
3.在本类的构造方法中,访问本类的另一个构造方法。
在第三种用法中要注意:
a. this(..)调用也必须是构造方法的第一语句,唯一一个
b.super和this两种构造调用,不能同时使用。
*/
public class Zi extends Fu{
int num = 20;
public Zi(){
// super();
this(134); //本类的无参构造,调用本类的有参构造
}
public Zi(int n ){
}
public Zi(int n, int m ){
}
public void showNum(){
int num = 10;
System.out.println(num); //局部变量
System.out.println(this.num); //本类中的成员变量
System.out.println(super.num); //父类中的成员变量
}
}
public class Fu {
int num =30;
}
本文详细解析了Java中super和this关键字的用法,包括在成员方法中访问父类和本类的成员变量及方法,以及在构造方法中调用父类和本类的构造方法。对比了两者在访问范围上的区别。
393

被折叠的 条评论
为什么被折叠?



