需求:

(1) 创建一个动物类(Animal),动物有自己的名字,动物能吃、能喝、能跑、能睡

(2)创建一个狗类(Dog),狗类继承自动物类,狗类有名字,品种,除了能吃、能喝、能跑、能睡,还能汪汪叫

(3)创建一个猫类(Cat),猫类继承自动物类,猫类有名字,年龄,除了能吃、能喝、能跑、能睡,还能喵喵叫,还能抓老鼠

(4)创建一个哮天犬类(xiaotian),哮天犬类继承自狗类,除了能吃、能喝、能跑、能睡,能汪汪叫,叫声很豪迈,还能飞。

创建适当的实例对象验证面向对象的继承与多态的特点。

运行结果如下:
在这里插入图片描述

class Animal(object):

    def __init__(self,name):
        self.name = name

    def JiNeng(self):
        print("%s能吃、能跑、能喝、能睡"%(self.name))

class Dog(Animal):  //狗类继承动物类
    
    def __init__(self,name,kind):
        super().__init__(name)
        self.kind = kind

    def JiNeng(self):
        print("%s是一只%s"%(self.name,self.kind))
        Animal.JiNeng(self)
        print("%s还能汪汪叫"%(self.name))

class Cat(Animal):  //猫类继承动物类
    def __init__(self,name,age):
        super().__init__(name)
        self.age = age

    def JiNeng(self):
        print("%s今年%s岁了"%(self.name,self.age))
        Animal.JiNeng(self)
        print("%s还能喵喵叫"%(self.name))
        print("%s还能抓老鼠"%(self.name))
    
class XiaoTian(Dog):   //哮天犬类继承狗类

    def JiNeng(self):
        Dog.JiNeng(self)
        print("叫声很豪迈")
        print("还能飞")
    
dog = Dog("猛男","二哈")
dog.JiNeng()
cat = Cat("花花",10)
cat.JiNeng()
xiaotian = XiaoTian("啸天","神仙狗")
xiaotian.JiNeng()



Logo

为开发者提供学习成长、分享交流、生态实践、资源工具等服务,帮助开发者快速成长。

更多推荐