什么是继承
Java中的继承使用的是extends关键字,继承的类叫做子类(扩展类),被继承的类叫做父类(超类或者基类)。凡是这种可以有包含关系的类都能实现继承关系。
继承中的术语和注意事项
1、类:类是具有共同属性和行为的一组对象。它是创建对象的模板或蓝图。
2、子类:子类是继承其他类的类。它也称为派生类,扩展类或子类。
3、超类/父类:超类是子类继承功能的类。它也称为基类或父类。-通用的属性和方法
4、可重用性:正如名称所指定的那样,可重用性是一种机制,可以帮助您在创建新类时重用现有类的属性和方法。
5、Java中类只支持单继承,即一个类只能有一个直接父类
使用继承
- 编写父类,创建公共的属性和方法
- 编写子类使用extends继承父类
- 编写子类中特有的属性和方法
注意:
- super关键字代表父类,只能出现在子类的方法和构造方法中
- 在子类构造方法中使用super调用父类构造方法,必须位于第一句;
- 子类不可以直接访问父类中定义为private的属性和方法 - private的东西是不能被继承的。
子类不能继承父类的情况:
- private修饰的属性和方法
- 子类和父类不再同一个包下,不能继承默认访问权限的成员
- 不能继承构造方法
什么时候使用继承
符合 is a 关系的设计时,可以考虑使用继承。
继承的优点
将子类共有的属性和方法抽取到父类中,减少重复代码,实现代码的重用