含义:
让类与类产生关系,子父类关系
关键字:
extends ,继承,增加、扩展、扩大
子父类名称:
父类:被继承的类(Animal类),超类(概念),基类(成员)
子类:继承的类 ,派生类(成员)
注意事项
- 私有的成员不能被继承
父类中定义的private成员,不能在子类中直接使用
其实从数据的角度,创建的子类对象中,包含着父类中定义的私有成员,子类可以通过父类中定义的公有方法,间接的访问父类中的私有成员
2.父类中的构造方法,不能被继承
1、不能继承:父类的构造方法需要和父类类名一致,子类的构造方法需要和子类类名一致,而父类和子类的类名不能一样
2、继承也不能完成构造方法的作用:父类的构造方法用于给父类的成员变量赋值;子类的构造方法用于给子类的成员变量赋值。父类的构造方法无法完整的完成子类成员变量的初始化。
3、后面会专门的讲解如何在子类中调用父类的构造方法
继承中成员变量之间的关系
- 子父类中出现了不同名的成员变量【常见】
子类中可以直接使用父类中定义了的成员变量
- 子父类中出现了同名的成员变量【不常见,不推荐】
使用就近原则来确定到底使用的是哪个变量,优先使用子类的成员变量
如果一定要访问父类的成员变量,可以使用super.父类变量名
继承中成员方法的关系
- 子父类中出现了不同名的方法【非常常见】
子类就继承了父类的方法,子类拥有了子父类中所有的功能,就都可以直接调用
- 子父类中出现了同名的方法【非常常见】
出现了方法的重写,子类调用时,直接调用的是子类重写之后的内容