1、分派发生在编译期运行期编译期的分派为静态分派运行期的为动态分派

  2、编译期是根据对象声明的类型来选择方法运行期是根据对象实际类型来选择方法

  3、单分派和多分派取决于宗量, 方法调用者和方法参数都是宗量.

  4、Java中静态分派的方法调用,首先确定调用者的静态类型是什么,然后根据要调用的方法参数的静态类型(声明类型)确定所有重载方法中要调用哪一个, 需要根据这两个宗量来编译, 所以是静态多分派(多个宗量确定).

  5、Java中动态分派的方法调用,在运行期间,虚拟机会根据调用者的实际类型调用对应的方法, 秩序根据这一个宗量就可以确定要调用的方法,所以是动态单分派(一个宗量)

04-29 00:24