美文网首页
14.Python3多态

14.Python3多态

作者: 一枼落知天下 | 来源:发表于2019-05-31 17:55 被阅读0次
    """
    运行时,调用不同类实例化的对象下的相同方法,实现的过程不一样
    得到不同的结果
    mylist.__len__()
    mystring.__len__()
    
    """
    
    class H2O:
        def __init__(self,name,temp):
            self.name = name
            self.temp = temp
    
        def turn_ice(self):
            if self.temp<0:
                print("[%s]水结成冰咯"%self.name)
            elif self.temp>=0 and self.temp<100:
                print("[%s]冰融化成水咯"%self.name)
            elif self.temp>=100:
                print("[%s]水蒸发咯"%self.name)
    
    
    class Ice(H2O):
        pass
    
    class Water(H2O):
        pass
    
    class Steam(H2O):
        pass
    
    
    
    def turn_ice(obj):
        obj.turn_ice()
    
    
    ice   = Ice("冰",-40)
    water = Water("水",40)
    steam = Steam("水蒸气",100000)
    
    
    turn_ice(ice)
    turn_ice(water)
    turn_ice(steam)
    
    

    相关文章

      网友评论

          本文标题:14.Python3多态

          本文链接:https://www.haomeiwen.com/subject/pnbgtctx.html