六、面向对象之单继承、多继承、重写
"""继承:当新建类没有需要继承的父类,统一继承object类,Python2中不写object类也是可以的 但是为了代码兼容Python3,最好写上,Python3不写object会自动继承object类,所以为了统一,py2和3都写上object """
# 单继承,多继承,重写请看注释 # 直接根据实例介绍 class Animal(object): def __init__(self,name): self.name = name def bar(self): print('%s开始叫唤...' % self.name) # 创建狗类 class Dog(Animal): # 狗类继承了一个动物类,这是单继承,多继承就是继承多个父类,用逗号隔开,子类会拥有所有继承的父类的方法与属性 def __init__(self): self.name = None # 当我们不知道要给实例属性传递什么参数时,可以赋值一个None值 def bar(self): # 重写父类的bar方法(父类的方法满足不了子类的需求,就可以重写),这样就会调用子类重写过后的方法,而不会调用父类的方法 super().bar() # 如果重写过后还想调用父类中的方法,就用super().父类方法 print('%s汪汪汪...' % self.name) # 创建实例 animal = Animal('dog') dog = Dog() dog.name = animal.name # 将动物类的属性赋值给狗类的属性 dog.bar()
>>>>>>>>:
dog开始叫唤...
dog汪汪汪...