一、对象继承:
1.1 继承:
特点:
提高代码的重用性,减少了代码的冗余
父类是object的类 —— 新式类,在Python3版本之后都是新式类
类总是要调用init方法,如果我们不写,实际上就调用父类object的__init__方法了
继承中使用属性时,如果自己有 就用自己的,如果自己没有 就用父类的,如果父类也没有 就报错
继承思想:
对象 -->类 -->基类
基类 -继承-> 子类 -实例化-> 对象
1.2 单继承:
特点:
可以有效的帮我们提高代码的重用性
在子类和父类有同名方法的时候,默认只执行子类的方法
如果想要执行父类的方法,可以在子类的方法中通过父类的类名调用父类的方法
单继承示例:
# 动物属性继承示例: class Animal(object): def __init__(self, name, kind): self.name = name self.kind = kind def eat(self, food): print('%s eat %s' % (self.name, food)) 猫的属性继承: class Cat(Animal): # 派生属性 def __init__(self, name, kind, eyes_color): self.eyes_color = eyes_color # super(Cat,self).__init__(name,kind) # 前面的类名和self可以忽略不写(方式一) # super().__init__(name,kind) # self参数默认传参,不需要指定(方式二) Animal.__init__(self, name, kind) # 通过父类类名传参(方式三) def climb(self): # 派生方法 print('%s climb tree'%self.name) 狗的属性继承: class Dog(Animal):pass hua = Cat('小花', '橘猫', '蓝色') print(hua.__dict__) # 打印对象的属性字典