1.继承
class Animal: def __init__(self,name,age,sex): self.name = name self.age = age self.sex = sex def eat(self): print('{}正在吃东西~'.format(self.name)) # 继承(Animal)类 class Person(Animal): def talk(self): print('子类独有的方法!') # 子类可以使用父类中的方法 p = Person('yhf',23,'女') p.eat()
子类也可以继承父类的属性:
class Animal: a_type = '动物' def __init__(self,name,age,sex): self.name = name self.age = age self.sex = sex def eat(self): print('{}正在吃东西~'.format(self.name)) # 继承(Animal)类 class Person(Animal): def talk(self): print('独有的方法!') p = Person('yhf',23,'女') # 子类也可以继承父类的属性 print(p.a_type)
2.重构父类中的方法
class Animal: def __init__(self,name,age,sex): self.name = name self.age = age self.sex = sex def eat(self): print('{}正在吃东西~'.format(self.name)) # 继承(Animal)类 class Person(Animal): def talk(self): print('独有的方法!') # 重写父类的方法 def eat(self): print('人在吃饭') # 子类和父类的方法重名,此时则执行子类中的方法,不执行父类中的方法 p = Person('yhf',23,'女') p.eat()
属性的重构:
class Animal: a_type = '动物' def __init__(self,name,age,sex): self.name = name self.age = age self.sex = sex def eat(self): print('{}正在吃东西~'.format(self.name)) # 继承(Animal)类 class Person(Animal): a_type = '高级动物' def talk(self): print('独有的方法!') p = Person('yhf',23,'女') # 子类和父类的属性重名,此时按照子类的属性,不按父类的属性 print(p.a_type)
class Animal: a_type = '动物'def __init__(self,name,age,sex): self.name = name self.age = age self.sex = sex def eat(self): print('{}正在吃东西~'.format(self.name))# 继承(Animal)类class Person(Animal): def talk(self): print('独有的方法!')p = Person('yhf',23,'女')# 子类也可以继承父类的属性print(p.a_type)