昨天我想到了一个问题,详情如下:
我有 3 个 JAR 文件,a.jar、b.jar、c.jar。这两个 jar 文件都有一个名为 com.test.Test 的类,并且 sayHello() 是在该类中定义的。
我创建了一个Web应用程序,我引用了a.jar,b.jar,c.jar。在 main 方法中,我涉及 sayHello(); .此时会加载哪个com.test.Test?
结果是一个.jar。
有人告诉我原因吗?提前致谢!!!
最佳答案
这就是java language specification说。它加载类在类路径中首次出现的内容,并忽略其他内容。
关于JAVA ClassLoad 相同的类名,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12590884/