zoukankan      html  css  js  c++  java
  • 转行小白成长路-java篇

    第8章:多态

      多态,同种类型的不同的存在状态。在此之前我一直有个困惑,多个类实现同一个接口,如何按不同场景应用不同的实现类。现在想来要想实现这种想法是不现实的,正确的思路应该是一个接口被多个接口继承(为了不同场景),然后在分别实现,调用接口的时候,就调用二层的接口,实现了唯一实现类与一个接口绑定。多态主要用在继承,为了扩展导出类,主要方向在于扩展类型,覆盖掉基类的方法,修改成专门针对导出类型的方法。

      对于参数的多态性,具体的实现思路应该是运行时将某一类的对象传进去,这就是后期绑定,然后根据是否继承自基类(或者object)判断同种类型。值得注意的是static和final是前期绑定,就是编译时期就知道相应的地址,这是因为这两种修饰的对象的生命周期是同类一样长,他们具有唯一性,与动态绑定就没有什么关系了。涉及到这种引用的调整,肯定都是非常谨慎的,所以不管是上转型还是下转型都要进行检查(RTTI)。具体执行的顺序就要jvm阶段具体分析。

      继承与接口类似,都是最好使用is-a的形式设计,这样可以最大的限度减低问题的发生,如果使用is-like-a就要涉及到上转型,新添加的方法没什么用,只能修改方法里面的内容,只能先上转型才能下转型。

  • 相关阅读:
    cocos2d-x 坐标系
    Linux 用户和用户组
    Linux 挂载分区 + swap 分区
    Linux 分区 磁盘分区与格式化
    Linux MBR分区(重点知识)
    Linux -磁盘管理 ip http://blog.csdn.net/xh16319/article/details/17272455
    Linux 底行模式常用命令
    Linux Bash 通配符
    Linux Bash 的基本功能 管道符
    Linux Bash的基本功能 输出重定向
  • 原文地址:https://www.cnblogs.com/aiwin/p/12369414.html
Copyright © 2011-2022 走看看