zoukankan      html  css  js  c++  java
  • 谈谈我对多态的理解

    其实要学好任何一门语言 编程范式至关重要,理解几个维度的方面如

    出错处理是怎么玩的内存管理是怎么玩的?数据封装和扩展怎么玩的多态和泛型怎么搞的?运行时识别反射机制是怎么玩的?并发编程怎样玩?……

     

    下面分析一下多态这个特性:

     

    多态通过分离做什么和怎么做,从另一个角度将接口和实现分离开来。多态不但能够改善代码的组织结构和可读性,还能够创建可扩展的程序—无论在项目最初创建时还是在需要添加新功能时都可以“生长” 的程序。

     

    多态方法调用允许一种类型表现出与其他相似类型之间的区别,只要它们都是从同一基类导出而来的。这种区别是根据方法行为的不同而表现出来的。

     

     

    多态分静态编译和动态编译两种

     

    静态主要体现在方法重载上  

     

    动态就是所谓的运行时绑定

     

    多态的核心是向上转型

    对于面向对象而言,多态分为编译时多态和运行时多态。其中编译时多态是静态的,主要是指方法的重载,它是根据参数列表的不同来区分不同的函数,通过编辑之后会变成两个不同的函数,在运行时谈不上多态。而运行时多态是动态的,它是通过动态绑定来实现的【向上转型】,也就是我们所说的多态性

     

    继承是为了重用父类代码。两个类若存在IS-A的关系就可以使用继承。,同时继承也为实现多态做了铺垫

     

     

    让程序可以选择多个运行状态,这就是多态性

  • 相关阅读:
    Ubuntu中的Gif动画录制工具
    NDT(Normal Distributions Transform)算法原理与公式推导
    激光数据匹配(MATLAB Robotics System Toolbox)
    使用正态分布变换(Normal Distributions Transform)进行点云配准
    微软Xbox One无线手柄控制机器人
    SICK LMS111激光雷达的使用
    SICK TiM561激光雷达的使用
    JAVA操作Hbase
    shell date 命令整理
    ArrayList排序
  • 原文地址:https://www.cnblogs.com/zhangfengshi/p/11002661.html
Copyright © 2011-2022 走看看