has a:
一个类中调用了另一个类的对象,就是把另一个类当做一种类似于int,或者str等类型的一种属性
is a:就是继承,一个类继承了另一个类
公式:
class 类名(父类):
如果子类中没有定义构造方法,就会去自动调用父类中的构造方法
子类可以继承父类的属性,也可以重写父类的方法,如果子类和父类中有重名的方法,那么调用时就会以子类中的为准,即使子类中定义的方法有参数,而你实例化对象是时未传参数,也不会去调用父类里的方法。只要子类中有,就不会去父类调用。
子类中有__init__()时,通过在这个方法里面调用super().init(参数)或super(类名,对象).init()来调用父类的构造方法
子类也可以通过super().方法名()来调用父类中的方法