关于java的看法
来源:3-4 怎样理解 Java 的方法分派?

JKill
2023-03-01
感觉老师java这里讲的不太对哦,输出 hello sub这个结果应该不是单纯的静态分派吧,还有动态分派,您视频里可没有讲到动态分派
写回答
3回答
-
bennyhuo
2023-03-01
视频里面说的静态分派,是在确定调用的重载方法的版本,这个是要在编译时确定的。至于后面运行时输出什么,我们在视频一开头就介绍了,取决于实际的类型。同学如果觉得那里表述有疑问,可以明确一下视频的位置哈。00 -
bennyhuo
2023-03-01
对,就是一星那里提到的,取决于实际类型,这个是动态分派。静态分派是指根据编译类型决定调用哪个方法,不矛盾的。00 -
JKill
提问者
2023-03-01
编译时生成了字节码没错的,根据声明类型来确定的,然后呢,如果由编译时的声明类型决定,那么输出的是不是就应该是Hello super了,其实我理解是在找到对应的方法后,又动态的分派了,根据重载的类型点用了子类的方法,因此才输出了Hello sub
012023-03-01
相似问题