| 
 | 
 
马上注册,结交更多好友,享用更多功能^_^
您需要 登录 才可以下载或查看,没有账号?立即注册  
 
x
 
# 。。。。。。。。。。。。。。继承。。。。。。。。。。。。。。。。。。。。。 
 
# ① 子类可以继承父类的所有属性和方法,私有除外 
# ② 子类可以重写和重用父类的属性和方法 
# ③ 子类可以拓展新的属性和方法 
# ④ 一个子类可以继承多个父类 
# ⑤ 一个父类也可以被多个子类继承 
# ⑥ C继承B,B继承A,C也会继承A的所有属性和方法。 
 
# 创建父类-基类 
class Person(): 
    def __init__(self,name,age): 
        self.name = name 
        self.age = age 
    def __str__(self): 
        return f"我叫{self.name},我{self.age}岁了。" 
    def walk(self): 
        print("人类都是双足行走的!") 
    def speak(self): 
        print("人类都会说话!") 
# 创建子类-派生类 
class Chinese(Person): 
    def __init__(self,name,age,nationality): 
        super().__init__(name,age) # 继承父类的属性 
        self.nationality = nationality # 拓展新的属性 
    def speak(self): # 重写父类的方法 
        print(f"{self.nationality}人说{self.nationality}话") 
        super().speak() # 重用父类的方法 
    def like(self):  # 拓展新的方法 
        print(f"{self.nationality}人都喜欢吃饺子。。。") 
 
class Japanese(Person): 
    def __init__(self,name,age,nationality): 
        Person.__init__(self,name,age) # 继承父类的属性 
        self.nationality = nationality # 拓展新的属性 
    def speak(self): # 重写父类的方法 
        print(f"{self.nationality}人说{self.nationality}话") 
        Person.speak(self) # 重用父类的方法 
    def like(self):  # 拓展新的方法 
        print(f"{self.nationality}人都喜欢吃核污染的生鱼片。。。") 
class Indine(Chinese,Japanese): # 一个子类继承多个父类 
    def __init__(self,name,age,nationality): 
        Person.__init__(self,name,age) # 继承父类的属性 
        self.nationality = nationality # 拓展新的属性 
    def speak(self): # 重写父类的方法 
        print(f"{self.nationality}人说{self.nationality}话") 
        Person.speak(self) # 重用父类的方法 
    def like(self):  # 拓展新的方法 
        print(f"{self.nationality}人都喜欢用手吃饭。。。") 
        super().like() 
        Japanese.like(self) 
# 创建对象     
zs = Person("张三",18)       
ls = Chinese("李四",20,"中国") 
zz = Japanese("井底王八",30,"日本") 
yy = Indine("安很莎",6,"印度") 
 
 
 
 |   
 
 
 
 |