2019年8月4日 多态 苗苗苗苗苗

多态:由不同的类实例化得到的对象,调用同一个方法执行的逻辑不同。

对象如何通过他们共同的属性和动作来操作及访问而不需要考虑他们具体的类。

多态表明了动态绑定的存在

class H2o:
    def __init__(self,name,temperature):
        self.name=name
        self.temperature=temperature
    def turn_ice(self):
        if self.temperature<0:
            print('%s温度太低结冰了'%self.name)
        elif self.temperature > 0 and self.temperature < 100:
            print('%s液化成冰'%self.name)
        else:
            print('%s温度太高变成了水蒸气'%self.name)

class Water(H2o):
    pass

class Ice(H2o):
    pass
class Steam(H2o):
    pass

w1=Water('water',50)
i1=Ice('ice',-5)
s1=Steam('steam',150)

w1.turn_ice()
i1.turn_ice()
s1.turn_ice()

>>>

water液化成冰
ice温度太低结冰了
steam温度太高变成了水蒸气

 

posted @ 2019-08-04 21:03  小圣庄  阅读(104)  评论(0编辑  收藏  举报