zoukankan      html  css  js  c++  java
  • 面向对象的三大特性之多态

    # 面向对象的三大特性之多态
    
    # 多态 由不同的类实例化得到的对象,调用同一个方法,执行的逻辑不同
    # 多态的概念指出了对象如何通过他们的属性和动作来操作及访问,而不需要考虑他们具体的类
    # 多态表明了动态(运行时)绑定的存在,允许重载及运行时类型确定和验证
    # 多态是由同一个类实例化出的多个对象,这些对象执行方法时,执行的过程和结果是不一样的
    
    class H2O:  # 定义了一个水的基类
        def __init__(self, name, temp):  # 初始化实例属性
            self.name = name
            self.temp = temp
    
        def turn(self):  # 定义函数属性,根据传入的温度来判断输出的内容
            if self.temp < 0:
                print('%s 温度太低结冰了' % self.name)
            elif self.temp > 100:
                print('%s 温度太高变为水蒸气' % self.name)
            else:
                print('%s 在(0-100)度之间为水' % self.name)
    
    
    # 定义了三个子类,水,冰,蒸气,继承至H2O
    class Water(H2O):
        pass
    
    
    class Ice(H2O):
        pass
    
    
    class Stream(H2O):
        pass
    
    
    # 实例化对象
    
    w1 = Water('', 40)
    i1 = Water('', -10)
    s1 = Water('蒸汽', 200)
    
    # 执行继承自父类的相同方法,显示结果不同
    w1.turn()
    i1.turn()
    s1.turn()
  • 相关阅读:
    Java 解惑:Random 种子的作用、含参与不含参构造函数区别
    Linux系统网络性能实例分析
    数据库服务器的性能调优-续
    Spring代理模式及AOP基本术语
    Spring框架总结
    单例模式和多例模式
    jqueryUI小案例
    Ajax讲解
    数据校验和国际化
    文件上传(多文件上传)/下载
  • 原文地址:https://www.cnblogs.com/dangrui0725/p/9461640.html
Copyright © 2011-2022 走看看