【1】类是对对象的抽象:
举例:
荣耀20,小米,红米,华为P40Pro ------>类:手机类
【2】继承是对类的抽象:
举例:
学生类:Student
属性:姓名,年龄,学号,身高
方法:吃饭,睡觉,学习,打游戏
教师类:Teacher:
属性:姓名,年龄,工号,身高
方法:吃饭,睡觉,上课,打游戏
共同的东西:
人类:
属性:姓名,年龄,身高
方法:吃饭,睡觉,打游戏
学生类/教师类 继承 自 人类
以后定义代码,先定义人类:
人类:---->父类,基类,超类
再定义:----->子类,派生类
属性:姓名,年龄,身高
方法:吃饭,睡觉,打游戏
子类继承父类
我们的继承关系是在合理的范围中进行的抽取,抽取出合理的子类父类关系。
区分:
学生是一个人,教师是一个人 ------->合理的抽取
学生是一个狗。 ------->不合理的抽取
【4】继承的好处:提高代码的复用性
父类定义的内容,子类可以直接拿过来用就可以了,不用在代码上反复定义了
需要注意的点:
父类private修饰的内容,子类实际上也继承了,只是因为封装的特性,阻碍了直接调用,但是提供了可以间接调用。
【5】总结:
(1)
父类/基类/超类
子类/派生类
子类继承父类一定在合理的范围内进行继承的
(2)继承的好处
提高了代码的复用性;
便于代码的扩展;
为了以后多态使用;是多态的前提
(3)父类private修饰的内容,子类也继承过来了
(4)一个父类可以有多个子类
(5)一个子类只能有一个直接父类,但是可以间接的继承自其他类。Object是所有类的根基父类。
所有的类都直接或间接的继承自Object
(6)继承具有传递性:
Student ----->继承自Person
其实Person---->继承自Object