1.继承基本结构
使用extends关键字
public class Son extends Father{
}
特点:
(1)父类改变子类可能也会跟着改变
(2)父类有的子类也能用
2.继承中的变量优先访问
就近原则访问:本方法优先----->本类其次------>父类最后
3.访问指定变量
super关键字:访问父类成员变量,可以代表变量也可以代表方法。
super.name="abc"; //父类中的name
super.方法名(); //父类中的方法
this关键字:访问本类的成员变量,也可访问方法。
this.name="abc";
this.function();
4.方法优先访问
先找子类--->再到父类找
5.构造方法
每一个子类构造方法在使用前都会首先对父类的构造方法进行访问,且访问的都是父类的无参构造方法。如果父类中没有无参构造方法,则会报错,这时:1.直接用super(参数)访问父类有参构造方法 2.在父类中自己写无参构造。
为什么访问父类?因为在使用子类时,可能会用到父类中的变量与方法。
6.方法重写
概念:父类中有和子类相同的方法声明:
子类:
public class Question1 extends Question{
@Override //注解:方法重写是否正确
public void doings() { //方法重写
System.out.println("kaiqishio");
//System.out.println("do do it");
super.doings(); //使用super用夫类
}
父类:
public class Question {
public void doings() {
System.out.println("do do it");
}
重点:子类方法的访问权限至少要大于等于父类
7.多继承
1.java中一个类只能继承另外的一个类。
2.java中支持多层继承(可实现多继承)。