05-多肽

多肽定义

不同的子类的对象,调用相同的父类方法,产生不同的结果。

  • 多肽可以增加代码的灵活度
  • 以继承和重写父类的方法为前提
  • 是调用方法的技巧,不会影响到类的内部设计
class Dog(object):
    def __init__(self, name):
        self.name = name

    def game(self):
        print("%s 在玩耍" % self.name)


class XiaoTianQuan(Dog):
    def game(self):
        print("%s 飞到天上耍" % self.name)


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

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

# 创建狗对象
# wangcai = Dog("旺财")
wangcai = XiaoTianQuan("飞天神犬")
# 创建小明对象
xiaoming = Person("小明")
# 让小明和够玩耍
xiaoming.game_with_dog(wangcai)

你可能感兴趣的:(05-多肽)