1,继承中 成员变量 的访问特点:
遵循 就近原则;
先在子类方法范围寻找,无则继续在类范围中寻找,最后在父类范围寻找,直至找到,无则报错;
2,继承中 成员方法 的访问特点:
3,继承中 构造器 的运行特点:(父类的构造器优先与子类执行,即父类无参构造先执行)
- 无参:
子类中的所有构造方法默认都会先访问父类中的无参的构造方法,再去执行自己的;
原因:
因为在子类构造器中会默认生成 super . 指向父类的无参构造器;
//但是,不会显示;
public Zi(){
super.Fu();
}
- 满参(/带参):
满参数(/带参)的同理,但,满参数(/带参)的是:父类子类的无参执行完再去执行满参的
子类满参(/带参)调用父类的满参(/带参)的格式:
//父类
public class Student {
private int age;
public Student(int age) {
this.age = age;
}
}
//子类
public class LittleStudent extends Student{
public LittleStudent(int age) {
//给父类构造器参数传子类age值
super(age);
}
}
4,继承中的标准类(构造器)格式:
提供一个无参和一个满参的构造器;
作用:避免因为不会自动生成无参构造器造成的bug;
如:
public Student() {
}
public Student(String name, int age) {
super(name, age);
}