美文网首页程序员
Java学习第三篇——多态

Java学习第三篇——多态

作者: eesly_yuan | 来源:发表于2014-06-13 20:27 被阅读0次

多态——只要不是后期绑定,就不是多态

绑定
  • 定义:建立函数调用(method calling)和函数本体(method body)之间的关联
  • 程序执行前绑定——先期绑定(编译期绑定)
  • 执行期判定对象类别,进行相应的绑定——后期绑定(动态绑定)
  • java所有函数除了声明为final的,其余皆用后期绑定,导出final的两个关键作用1、防止覆写;2、关闭动态绑定
覆写vs重载
  • 重载,函数名称一致,形参不同,不是多态调用
  • 覆写,派生类实现或者重新实现函数
抽象类和抽象函数
  • 含有abstract method的class称之为abstract class抽象类
构造函数和多态
  • 构造函数调用顺序

1、调用base class 的构造函数,递归到root上,然后依次向下调用derived class,直至最末为止。
2、根据成员声明顺序,设置初值
3、调用derived class 构造函数本体

继承和finalize()
  • 在derived class 中覆写finalize()时,需要调用base class 的 finalize(),调用顺序和构造时候相反。
多态方法在构造函数中的行为
  • 构造函数中调用动态绑定的某个函数,会唤起该函数被覆写的定义。
  • 实际初始化过程

1、所有事之前,分配给该对象的存储空间会被初始化为二进制的0
2、以前面的方式调用构造函数

  • 构造函数中唯一可以安全调用的函数是base class 中的final函数
最后,继承和多态的选择,在不清楚如何选择的时候可以优先选择组合。

相关文章

  • Java学习第三篇——多态

    多态——只要不是后期绑定,就不是多态 绑定 定义:建立函数调用(method calling)和函数本体(meth...

  • 2017-12-30

    JAVA学习日记(8) 多态!!很重要

  • Java中的多态

    学习笔记:多态参考文章:Java多态的介绍[https://blog.csdn.net/newchitu/arti...

  • java多态面试题

    java多态性 多态分两种: (1) 编译时多态(设计时多态):方法重载。 (2) 运行时多态:JAVA运...

  • java多态面试题

    java多态性 多态分两种: (1) 编译时多态(设计时多态):方法重载。 (2) 运行时多态:JAVA运行时...

  • 2018-01-25

    多态机制 java语言,实现多态...

  • 类似——外观模式

    学习Java,有三大特性:封装、多态、继承。 上次说到:学习设计模式,是了解多态这个特性,非常好的一个途径。 另外...

  • Java编程思想学习笔记(8)

    Java编程思想学习笔记(8) Java多态 多态通过分离做什么和怎么做,从另一个角度将接口和实现分离开来。 同时...

  • Java基础学习——多态

    学习资料: Thinking in Java 第8掌 面相对象的程序语言三大基本特征: 多态从另一种角度将接口与实...

  • Java学习笔记------多态

    http://www.runoob.com/java/java-polymorphism.html 多态是同一个行...

网友评论

    本文标题:Java学习第三篇——多态

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