为什么我的主方法里面 th.fun();调用的是子类的fun(); 这中间是存在自动类型转换的啊~! th被转换成ShiYan1类的对象了啊! 怎么不调用ShiYan1中的fun()方法,却用的是Son中的fun()方法呢?
这就是java里的多态,th虽然是父类对象的引用,实际上指向的是具体的一个子类对象,你去看看多态知识就知道了
因为 ShiYan1 的 fun 被Son 重写了而已。
fun1的函数里面的第二句应该调用的是shiyan1中的fun吧
恩
@梦再笑: 左父右子的声明方式 虽然你声明的是父类 但实际实例化的是子类 所以执行后调用的是子类的函数
而你fun1函数里面第二句是显式调用父类的函数
你的th本来不就是一个son么?