java 动态绑定!

java中的private static final方法或者构造函数的绑定方式都是静态绑定。虚拟机如果在的每次调用方法时都要进行搜索,这样会导致相当大的开销。 因此,虚拟机预先为每个类都创建一个方法表,其中列出了所有方法的签名和实际调用的方法。这样以来,在真正调用方法时,虚拟机仅查找这个表就行了。 在运行时刻,虚拟调用方法的解析过程如下例:假如调用e.getSalary(),则解析过程为: (1) 首先,虚拟机提取e的实际类型的方法表。 (2) 虚拟机搜索定义getSalary签名的类。此时,虚拟机已经知道应该调用哪个方法。 (3) 虚拟机调用该方法。 static方法可以被子类继承,但是不能被覆盖,这是应为static方法是静态绑定的。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值