PyThon对象的综合用法

PyThon对象的综合用法

class Animal:
    def __init__(self, name, age):
        self.name = name
        self.age = age
    def eat(self):
        print(f"{self.name} is 干饭中")

    def make_sound(self):
        pass

# 定义 Dog 子类
class Dog(Animal):
    def __init__(self, name, age, breed):
        super().__init__(name, age)
        self.breed = breed

    def make_sound(self):
        print("你在狗叫什么!")

# 定义 Cat 子类
class Cat(Animal):
    def __init__(self, name, age, color):
        super().__init__(name, age)
        self.color = color

    def make_sound(self):
        print("阳光开朗听泉猫!")

# 定义 Bird 子类
class Bird(Animal):
    def __init__(self, name, age, can_fly):
        super().__init__(name, age)
        self.can_fly = can_fly

    def make_sound(self):
        print("芜湖起飞!!!")

# 创建实力
dog = Dog("dahuang", 5, "Golden Retriever")
cat = Cat("mimi", 3, "pink")
bird = Bird("rose", 2, True)

dog.eat()
dog.make_sound()

cat.eat()
cat.make_sound()

bird.eat()
bird.make_sound()

本段代码定义了一个动物类 Animal 和三个子类 DogCatBird,每个子类都继承自 Animal 类。下面是对代码逻辑结构的解析:

1.定义 Animal 基类

class Animal:
    def __init__(self, name, age):
        self.name = name
        self.age = age
    def eat(self):
        print(f"{self.name} is 干饭中")
    def make_sound(self):
        pass

Animal 类定义了两个方法:eat 和 make_soundeat 方法用于打印出一个动物正在吃饭的消息,make_sound 方法是一个空方法,没有实现任何功能,子类可以根据需要覆盖这个方法。

2.定义 Dog 子类

class Dog(Animal):
    def __init__(self, name, age, breed):
        super().__init__(name, age)
        self.breed = breed
    def make_sound(self):
        print("你在狗叫什么!")

Dog 类继承自 Animal 类,并添加了一个新的属性 breed。同时,它覆盖了 make_sound 方法,以便狗发出特定的声音。

3.定义 Cat 子类

class Cat(Animal):
    def __init__(self, name, age, color):
        super().__init__(name, age)
        self.color = color
    def make_sound(self):
        print("阳光开朗听泉猫!")

Cat 类同样继承自 Animal 类,并添加了一个新的属性 color。它也覆盖了 make_sound 方法,以便猫发出特定的声音。

4.定义 Bird 子类

class Bird(Animal):
    def __init__(self, name, age, can_fly):
        super().__init__(name, age)
        self.can_fly = can_fly
    def make_sound(self):
        print("芜湖起飞!!!")

Bird 类同样继承自 Animal 类,并添加了一个新的属性 can_fly,表示鸟是否能够飞行。它也覆盖了 make_sound 方法,以便鸟发出特定的声音。

5.创建实例

dog = Dog("dahuang", 5, "Golden Retriever")
cat = Cat("mimi", 3, "pink")
bird = Bird("rose", 2, True)

这段代码创建了三个动物实例:一只名叫 “dahuang” 的5岁金毛猎犬,一只名叫 “mimi” 的3岁粉色猫,一只名叫 “rose” 的2岁能够飞行的鸟。

6.调用实例方法

dog.eat()
dog.make_sound()

cat.eat()
cat.make_sound()

bird.eat()
bird.make_sound()
  1. 这些代码分别调用了每个动物实例的 eat 和 make_sound 方法,并打印出相应的消息。

总的来说,这段代码演示了如何使用Python类和继承来创建一个基类 Animal,以及从它派生出特定类型的动物子类 DogCatBird。每个子类都有其独特的属性和行为,这些通过覆盖基类的方法来实现。通过创建实例并调用其方法,可以模拟动物的饮食和发出声音的行为。

 

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值