标签: java
例如,采用 getstatic 字节码操作码。 JVM检查引用字段是否为静态(或者可能是实例?) 这不是多余的步骤吗?因为,编译器确保该字段是静态的。 PS也许,重点是在运行时可以改变字节码。
答案 0 :(得分:0)
这不是多余的一步吗?因为,编译器确保该字段是静态的。
如果有人手动创建字节码(或使用字节码修改库),则不会发生那些编译器检查。这就是我们需要在加载时验证字节码的原因。