一)Java类是单继承(使用extends关键字体现),但一个类可以有多个继承 如A继承B B继承C 则A继承C中 public protected(公共的和受保护的)修饰的变量和方法。
二)继承的特性
继承成员变量:
1)子类继承父类的成员变量,但不是所有的,只继承父类中 public protected 修饰的变量,不会继承private修饰的变量。
2)对于同包情况下,可以直接继承,对于非同包情况下,则不能够继承
3)对于子类可以继承的父类成员变量,如果在子类中出现了同名称的成员变量,即子类的成员子类的变量会隐藏父类的同名变量。如果要在子类中要访问父类中同名成员变量,需要使用super关键字来进行引用。
继承方法:
1)子类继承父类中 public protected 修饰的方法,不继承父类中private修饰的方法。
2)对于同包情况下,可以直接继承,对于非同包情况下,则不能够继承
3)对于可以继承的父类方法,如果子类中出现了同名称的方法,则子类方法会覆盖父类的方法。如果子类要访问父类中同名的方法,需要使用super关键字来进行引用。
三)变量的覆盖和方法的重写
1)当子类中有同名于父类的变量(非私有的),则需要使用关键字super来调用
super.png
QQ截图20190810191420.png
super1.png
QQ截图20190810192528.png