继承

继承

public 子类 extends 父类
子类的共同属性(包括方法)提取出来放到父类中,通过子类访问父类的属性

super() 和 this() 都只能放在构造器第一行,因此这两个方法不能共存在一个构造器
abstract class A{
    public A(){}
    public A(int count){
        //调用本类的无参构造器
        this();
    }
}
class B extends A{
    public B(){
        //调用父类的无参构造器
        super();
    }
    public B(int count){
        //调用本类的无参构造器
        this();
        //super();这样是错误的
    }
}

补充:super是指调用父类,this是指调用本类。加()是指调用构造器,加.属性名就可以直接调用
从最大的父类开始加载向后代加载
file
?->这时请大
家注意,要按照查找关系来返回信息(和方法的重写类似l;.l )
(1)首先看子类是否有该属性
(2)如果子类有这个属性,并且可以访问,则返回信息
(3)如果子类没有这个属性,就看父类有没有这个属性(如果父类有该属性,并且可以访问,就返回信息.·)
(4)如果父类没有就按照(3)的规则,继续找上级父类,直到Object