多态是面向对象的重要特性之一,我试着用最简单的方式解释Java多态: 要正确理解多态,我们需要明确如下概念:・定义类型和实际类型・重载和重写・编译和运行 其中实际类型为new关键字后面的类型. 重载发生在编译阶段,由定义类型决定.重写发生在运行阶段,由实际类型决定. 确定a.fun(b)最终调用了哪个类的哪个方法,可以通过如下几步进行:1.运用继承规则,确定每个类具有的全部方法,包括父类的方法:2.运用重载规则,确定编译阶段对应的定义类型的方法:3.运用重写规则,确定运行阶段对应的实际类型的方法…