JVM方法调用

JVM方法调用指令有5条:

指令功能
invokestatic调用static方法
invokespecial调用父类的构造方法,实例构造方法,private方法
invokevirtual调用实例public&protected方法
invokeinterface调用接口方法
invokedynamic调用动态方法

根据是否可以在编译阶段唯一确定调用方法版本,可以分为:解析调用和分派调用

1,解析调用(Resolution)   : 编译期可知,运行期不变

解析调用是一个静态的过程,在编译期就完全确定,在类加载的解析阶段就会把涉及的符号引用全部转变为可确定的直接引用。

解析调用的方法包括invokestatic, invokespecial, 以及invokevirtual调用final方法,它们被成为非虚方法。


2,分派调用(Dispatch)

invokevirtual, invokedynamic, invokeinterface


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值