继承:
1.继承关系可以是多个父类
注意点,子类初始化方法里面,需要调用父类的初始化方法
class NorthTiger(Tiger):
color = “yellow white”
def init(self,weight):
Tiger.init(self.weight)
可以把继承关系继续下去
#可以多重继承
class SouTiger(Tiger,NorthTiger): #相当于两个父亲,有相同的属性的时候,Tiger,NorthTiger哪个在前,就继承谁的,先入为主
多继承的时候,初始化文件都要写上。
2.重定义
子类的属性和行为和父类有些不一样
比如:重定义东北虎的叫声和他的名字
子类实例调用这些属性,方法会使用新的定义
多态
同样的方法调用,在不同的类型的对象上表现出不同的特性,就称之为多态
如果要执行父类的方法:
class NorthTiger(Tiger):
def __init__(self,weight):
Tiger.__init__(self.weight)
@staticmethod
def run():
print("子类的run方法")
n1 = NorthTiger(100)
n1.run() #执行结果是:子类的run方法
super(NorthTiger,n1).run() #执行结果是:父类的run方法 如果要执行父类的方法用super方法
3. __name 私有属性