当我查看二进制类文件时,我是否可以轻松找出需要加载哪些其他类才能使用该类?
作为一种“目录”,我只能看到带有类条目的常量池表。第一个和第二个条目有特定的含义,直接在我找到的 JVM Spec和其他地方进行了解释。但是该表中的其他条目是否是该类文件使用的其他类的列表?这么说 - 文件的 - 部分的 JVM 变体?import
*.java
所以归结为:
- 常量池表中的所有类条目是否都引用了类文件中某处使用的类?
- 或者是否有其他机制可以让 Class 条目进入常量池?
- 假设我不想在第一次使用类时实现某种“延迟类加载”,那么我是否通过使用常量池表中的类条目来加载正确的已用类列表?