第13节 - 面向对象三(继承/多态/类与实例的属性和方法)
一、继承
继承就是让类与类之间产生关系,提高了代码的复用性
通过继承我们可以使一个类获取到其他类中的属性和方法
在定义类的时候,可以在类名后的括号里面指定当前类的父类(超类/基类)
继承是可以传递的,即由一个子类传递到子类的子类
继承是面向对象的三大特征之一(封装、继承、多态)
如上图:所有类的父类都是object
二、方法的重写
如果在子类中有和父类同名的方法,则通过子类实例去调用方法时,会调用子类的方法而不是父类的方法,这个特点我们称之为方法的重写(覆盖)
当我们调用一个对象的方法时:
• 会优先去当前对象中寻找是否具有该方法,如果有则直接调用
• 如果没有,则去当前对象的父类中寻找,如果父类中有则直接调用父类中的方法
• 如果没有,则去父类中的父类寻找,以此类推,直到找到object,如果依然没有找到就报错
如上图,