一、继承
1、概念:就是共性抽取,子类拥有父类的所有内容,除了私有和构造方法。
2、好处:代码复用。
3、继承中成员变量的访问特点:
(1)直接使用子类对象访问成员变量:等号左边是谁,优先使用谁,没有向上找name,this.name,super.name。
(2)使用成员方法间接访问成员变量:方法属于谁,优先使用谁,没有向上找。
4、继承中三个重名的成员变量的访问特点:
(1)方法内部直接使用变量,采用就近原则,方法内部有,直接使用;
(2)this.变量名:本类成员变量名称;
(3)super.变量名:父类成员变量名称;
(4)this代表本类对象,super代表父类(没有父类对象)
5、继承中成员方法的访问特点:
new的是谁,优先使用谁,没有向上找
6、方法重写
(1)概念:父子类之间的方法,名称相同,参数列表也相同,这就叫做方法的重写(Overrride)
方法重载【overload】:名称相同,参数列表【不一样】,方法体无所谓
方法重写【override】:名称相同,参数列表【也一样】,方法体无所谓
重写又叫做:覆盖、复写
(2)访问特点:new的是哪个类,优先使用哪个类,没有向上找
7、方法重写的注意事项:
(1)子类重写父类方法的访问权限要大于等于父类
(2)父类的方法为private,不能继承,子类不存在覆盖重写
(3)子类重写父类的方法,返回值类型要小于等于父类
8、继承中构造方法的访问特点
(1)创建子类对象,必须调用父类的构造方法
(2)子类构造方法中,调用父类构造方法的super()必须是第一条语句
(3)构造方法可以重载,子类构造方法中可以使用super(...)调用父类的有参构造
(4)普通方法中不能使用super调用父类的构造方法