静态分派
-
依赖静态类型来定位方法执行版本的分派称为静态分派。
-
典型案例:方法重载。
-
发生在编译阶段。
-
-
Human
称为变量的静态类型,Man
称为变量的实际类型。静态变量的变化仅仅在使用时发生,最终的静态类型在编译期可知。而实际类型只有在运行期间才可知。 -
如上代码所示,
JVM
在重载时是通过参数的静态类型而不是实际类型作为判断依据的----根据参数的静态类型决定使用那个重载版本。
动态分派
- 典型案例:重写
有一种观点(不认同):因为重载是静态的,重写是动态的,所以只有重写算是多态性的体现,重载不算多态
评论区