8. super 关键字
super 关键字可以理解为 父类对象,this 关键字表示当前对象
当一个属性的使用没有添加 this 或者 super 关键字,那么他的查找顺序是 局部变量-->
成员变量-->父类变量 如果还没有找到那么就会包编译异常。
被 this 修饰的变量,如果本类的成员变星中没有找到,同样也会去父类中查找
被 super 修饰的变量只会从父类中查找,如果父类中没有,而子类中存在,同样会报编
译错误
super 和 this 关键字访问成员的区别
成员变量:
1. this.成员变量
2. super.成员变量 super 是不能访问私有的成员变量的,可以通过访问对应的共有方法实
现
成员方法:
1. this.成员方法
2. super.成员方法
构造方法:
1. this(参数列表);
2. super(参数列表);
任何一个构造方法都默认的会在构造方法的第一句上写上 super();访问父类的无参构造方法
目的是初始化父类的成员变量
Constructor call must be the first statement in a constructor
super 和 this 方法构造方法都必须出现在构造方法的第一句,this 和 super 在方法构造
方法的时候,二者是不能共存
static 静态的上下文都是不能出现 this 和 super 的
案例代码:
评论0