JAVA ClassLoad 相同的类名

标签 java jakarta-ee

昨天我想到了一个问题,详情如下:

我有 3 个 JAR 文件,a.jarb.jarc.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/

相关文章:

java - 保存Applet中生成的文件

jakarta-ee - 使用 MySQL 的 Java EE Web 应用程序的 Amazon Cloud 配置

java - 使用对象作为数组时出现空指针异常

java - 如何使用Spring EL注入(inject)bean id?

java - 由于后台线程,tomcat 无法重新加载上下文

eclipse - Tomcat 没有在 eclipse 上启动

java - 如何修改displaytag中某列的空值?

java - 在 Java 中格式化大数字

java - 普通类中的通用静态方法;使用基本类型数组

java - 删除空格后的文本