invokespecial,invokevirtual,invokeinterface,invokestatic

invokevirtual
指令用于调用对象的实例方法,根据对象的实际类型进行分派(虚方法分派),这也是Java 语言中最常见的方法分派方式。

invokeinterface
指令用于调用接口方法,它会在运行时搜索一个实现了这个接口方法的对象,找出适合的方法进行调用。

invokespecial
指令用于调用一些需要特殊处理的实例方法,包括实例初始化方法(§2.9)、私有方法和父类方法。

invokestatic
指令用于调用类方法(static 方法)。

而方法返回指令则是根据返回值的类型区分的,包括有 ireturn(当返回值是 boolean、
byte、char、short 和 int 类型时使用)、lreturn、freturn、dreturn 和 areturn,另
外还有一条 return 指令供声明为 void 的方法、实例初始化方法、类和接口的类初始化方法使用。


最好的沟通方式就是减少沟通。

你可能感兴趣的:(interface)