java为什么在只更改符号名称后会得到不同的“类”文件?
当我只更改相应“Java”文件中的符号名(类、接口、函数或变量)时,为什么Java字节码解释器会更改“类”文件
我在源代码管理(GIT)下维护这两种类型,并且我一直看到“更改的文件数量是原来的两倍”,即使是上面提到的外观更改
顺便说一句,问题不在于源代码管理问题,而在于仅供参考,我将这些文件保存在GIT上的原因是为了能够进行“清理”(删除所有未版本的文件),然后从命令行运行程序而无需重新编译
如果你有任何想法,如何实现这个功能(运行没有构建),否则,那么我会很高兴听到它
谢谢
# 1 楼答案
JVM需要访问符号名,原因有很多,包括以下几点
因此,符号名需要存储在类路径中
# 2 楼答案
因为类文件包含符号名
一般来说,人们不会将类文件保存在源代码管理中。如果有人想要一个类文件的旧版本,他们会得到旧的源文件并编译它