gpt4 book ai didi

java - 类文件中的内部类属性有什么用?

转载 作者:行者123 更新时间:2023-12-01 19:41:58 25 4
gpt4 key购买 nike

我知道内部类和匿名类是java编译器提供的编译时构造。如果是这样,为什么类文件必须包含有关其中声明的内部类的信息。 JVM 规范指出:

The InnerClasses attribute must be recognized and correctly read by a class file reader in order to properly implement the Java SE platform class libraries

我无法理解这句话的含义。有人能详细解释一下这个说法吗?

最佳答案

字节码中存储了大量关于 Java 级别功能的元数据,但对字节码执行没有直接影响。这很有用,有几个原因。首先,Java 有反射库,可以提供对这些信息的访问,因此它必须以某种方式在运行时可供 JVM 使用。其次,它允许您针对纯二进制库进行编译。

“无用”功能的另一个示例是 throws 子句(作为可选属性存储在字节码中)。需要这些,这样您就可以在没有源代码的情况下针对类文件进行编译,但对字节码的执行没有影响。

关于java - 类文件中的内部类属性有什么用?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/55076186/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com