Rad*_*cek 7 java openjdk jvm bytecode
看来,OpenJDK的8位私有方法不属于final也不static成虚函数表.为什么当动态绑定不用于私有方法时(因为它们是用invokespecial调用的)或是否使用它?
这样做是为了处理一些罕见的情况,即超类中存在具有相同名称和签名的可重写方法。尽管肯定还有需要改进的地方,但可能是针对 JDK 9 的。
请参阅https://bugs.openjdk.java.net/browse/JDK-8024368
私有方法总是获得一个 vtable 条目来处理与类的向后兼容性 - 即,您可以具有与您的类本地的私有方法相同的名称,并且还可以从您的超类继承一个方法,该方法将由您的私有方法周围继承孩子。
| 归档时间: |
|
| 查看次数: |
198 次 |
| 最近记录: |