Java编程思想笔记(多态)

      1.再论向上转型:

      1(1).忘记对象类型

      2.转机:

      2(1).方法调用绑定

      2(2).产生正确的行为

      2(3).可扩展性:多态是一项让程序员“将改变的事物与未变的事物分离开来”的重要技术。

      2(4).缺陷:“覆盖”私有方法:只有非private方法才可以被覆盖;但是还需要密切注意覆盖private方法的现象,这时虽然编译器不会报错,但是也不会按照我们所期望的来执行。确切地说,在导出类中,对于基类中的private方法,最好采用不同的名字。

      2(5).缺陷:域与静态方法:如果某个方法是静态的,它的行为就不具有多态性。

      3.构造器和多态

      3(1).构造器的调用顺序:1.调用基类构造器(从最低层的导出类)2.按声明顺序调用成员的初始化方法。3.调用导出类构造器的主体

      3(2).继承与清理:由于继承的缘故,如果我们有其他作为垃圾回收一部分的特殊清理动作,就必须在导出类中覆盖dispose()方法。当覆盖被继承类的dispose()方法时,务必记住调用基类版本dispose()方法;否则,基类的清理动作就不会发生。

      3(3).构造器内部的多态方法的行为:用尽可能简单的方法使对象进入正常状态;如果可以的话,避免调用其他方法。

      4.协变返回类型:

      5.用继承进行设计:用继承表达行为间的差异,并用字段表达状态上的变化。

      5(1).纯继承与扩展

      5(2).向下转型与运行时类型识别

原文地址:https://www.cnblogs.com/Zara/p/5764590.html