多态的概念

多态:不同的子类对象调用相同的父类方法,产生不同的执行结果
多态可以增加代码的灵活度
以继承和重写父类方法为前提

例子

1.在Dog类中封装方法game
2. 定义XiaoTianDog继承自Dog,并且重写game方法
3. 定义Person类,并且封装一个和狗玩的方法

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

    def game(self):
        print("愉快的玩耍")


class XiaoTianDog(Dog):

    def game(self):
        print("在天上玩耍")


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

    def play_game(self,dog):
        print(" %s 和 %s 在一起玩耍"%(self.name,dog.name))
        dog.game()

xiaoming=Person("小明")
wangcai=Dog("旺财")
xiaotianquan=XiaoTianDog("啸天犬")
xiaoming.play_game(wangcai)
xiaoming.play_game(xiaotianquan)

运行结果:

小明 和 旺财 在一起玩耍
愉快的玩耍
 小明 和 啸天犬 在一起玩耍
在天上玩耍
Logo

GitCode 天启AI是一款由 GitCode 团队打造的智能助手,基于先进的LLM(大语言模型)与多智能体 Agent 技术构建,致力于为用户提供高效、智能、多模态的创作与开发支持。它不仅支持自然语言对话,还具备处理文件、生成 PPT、撰写分析报告、开发 Web 应用等多项能力,真正做到“一句话,让 Al帮你完成复杂任务”。

更多推荐