Python---多态

多态:多种状态,即完成某个行为时,使用不同的对象会得到不同的状态 (以父类做定义声明,以子类做实际工作)

抽象类 (接口):含有抽象方法称为抽象类
抽象方法:方法体是空实现的(pass)称为抽象方法

python 复制代码
# Animal为抽象类
class Animal:
    def speak(self):
        pass


class Dog:
    def speak(self):
        print("汪汪汪")


class Cat:
    def speak(self):
        print("喵喵喵")


def make_noise(animal: Animal):
    animal.speak()


dog = Dog()
cat = Cat()

make_noise(dog)
make_noise(cat)



# AC 为抽象类
class AC:
    def cool_wind(sel):
        pass

    def hot_wind(sel):
        pass

    def swing_l_r(sel):
        pass


class Midea_AC(AC):
    def cool_wind(sel):
        print("美的制冷")

    def hot_wind(sel):
        print("美的制热")

    def swing_l_r(sel):
        print("美的左右摆动")


class GREE_AC(AC):
    def cool_wind(sel):
        print("格力制冷")

    def hot_wind(sel):
        print("格力制热")

    def swing_l_r(sel):
        print("格力左右摆动")


def make_cool(ac: AC):
    ac.cool_wind()


midea_ac = Midea_AC()
gree_ac = GREE_AC()

make_cool(midea_ac)
make_cool(gree_ac)
相关推荐
databook8 小时前
Manim实现脉冲闪烁特效
后端·python·动效
程序设计实验室8 小时前
2025年了,在 Django 之外,Python Web 框架还能怎么选?
python
倔强青铜三10 小时前
苦练Python第46天:文件写入与上下文管理器
人工智能·python·面试
用户25191624271113 小时前
Python之语言特点
python
刘立军13 小时前
使用pyHugeGraph查询HugeGraph图数据
python·graphql
数据智能老司机17 小时前
精通 Python 设计模式——创建型设计模式
python·设计模式·架构
数据智能老司机18 小时前
精通 Python 设计模式——SOLID 原则
python·设计模式·架构
c8i19 小时前
django中的FBV 和 CBV
python·django
c8i19 小时前
python中的闭包和装饰器
python
这里有鱼汤1 天前
小白必看:QMT里的miniQMT入门教程
后端·python