多态简单理解

ConstDataSet cn = new ConstDataSet();//基类变量指向基类对象
ConstDataSet st = new SpecificTest();//基类变量指向子类对象

调用非虚方法:

      执行调用方法的变量类型对应的方法,如果没有找到,则往上回溯,查找基类中有无对应的方法;直到object,若找不到则报错

调用虚方法:

      执行调用方法的变量指向的对象(变量引用地址指向的对象)类型对应的方法, 如果没有找到,则往上回溯,查找基类中有无对应的方法;直到object,若找不到则报错

简单记法:

        非虚方法,看变量;虚方法,看变量指向的对象;找不到都会向基类回溯。

猜你喜欢

转载自blog.csdn.net/u013986317/article/details/81279550