类的继承 - extends
继承的定义
- 继承是面向对象的三大特性之一,也是实现软件复用的重要手段
- 继承的意思就是把父类的属性和方法复制到子类,拥有父类的所有东西,可以减少代码量,节省空间和时间
继承的语法
- public class 子类 extends 父类 {super()代码块}
- super()是指向父类的构造器
- 所有类里面都应该些一个无参的构造器,防止没有显示的调用父类构造器是出错
继承的特点
- 所有的类都是object类的子类
- 继承只能单继承
- 继承中父类和子类是一般和特殊的关系,父类有的子类都有,而子类有的有的父类没有
- 使用private修饰符修饰的成员变量和方法子类不能继承,其他都能够继承
- 无论如何子类都会调用一次父类的构造器
super
- super在子类当中和this的作用相似,super是指向当前子类的父类
- 所有的构造器都有一个super()
- this()和super()在同一构造器中只能出现一个,因为this()有一个super()
- super()和this()都只能在构造器的第一行
- 子类构造器中没有super和this,子类在执行构造器语句前执行父类的无参构造器
- super能访问父类被隐藏的成员变量和属性,而且super只能在子类的方法定义中使用
- 如果需要在子类中调用父类被覆盖的方法,可以使用super关键字