面向对象三(四)大特征——继承
继承
继承:就是子类继承父类的特征和行为,使得子类对象(实例)具有父类的实例域和方法,或子类从父类继承方法,使得子类具有父类相同的行为。
继承格式
//父类A
class A {}
//子类B 继承了 父类A
class B extends A{}
继承优点
在在两个类A,B中,如果是代码块相同且重复的情况下,代码量会很大,且修改容易出错,因此,需要将两个类共同的代码块提取出来,产生一个新的类C,当做类A和B的父类,此时类A和B只需要使用关键字extends继承类C,就具有类C的属性和方法,再通过关键字super就可以使得代码简洁。
优点总结:
- 可维护性提高
- 代码更加简洁
- 提高了代码的可复用性
- 避免了代码的重复
继承方式
继承方式分为三种:单继承,多重继承(不同于多继承),多个类继承同一个类。
单继承
这种情况属于单继承:
class A {}
class B extends A{}
多重继承
这种情况属于多重继承:一层一层的继承。
class A {}
class B extends A{}
class C extends B{}
图例:
注意: 多重继承和多继承是不同的,以下方式是错误的:
多个类继承同一个类
class A{}
class B extends class A{}
class C extends class A{}
继承的特点
- 子类拥有父类的方法和属性
- 子类也可以对自己的方法和属性进行拓展
- Java的继承是单继承的,但是可以多重继承。
关键字
- super:通过super,可以实现子类对父类成员的访问。
- this:通过this,指向自己的引用。
更多有关Java基础,详戳【Java基础】,其他内容,详戳主页。