gpt4 book ai didi

JAVA:与不同源文件夹下存在的相同包和类名称冲突

转载 作者:塔克拉玛干 更新时间:2023-11-01 23:01:44 33 4
gpt4 key购买 nike

我面临着与在不同源下具有相同名称的类和包名称的冲突。简而言之,目录结构看起来有点像这样:

src/test/java
com.service.helper
Constants.java

src/intTest/java
com.service.helper
Constants.java
com.service.utility
SomethingTest.java

两个 Constants.java 中定义的几个常量字符串是相同的,并且很少是这些类独有的。现在我在 src/intTest/java 下有一个 SomethingTest.java 文件,它应该使用在 src/intTest/java 下定义的 Constants.java。

但是,它似乎正在使用在 src/test/java 包下定义的 Constants.java 文件。因此,我无法使用 src/intTest/java 文件下的 Constants.java 中定义的常量字符串。

谁能解释清楚为什么会这样?我真的可以在不改变当前文件名的包结构的情况下访问src/intTest/java下定义的Constants.java吗?

感谢帮助。谢谢。

最佳答案

Java 类的标识 是其“绝对”名称,如x.y.z.SomeClass 中所示。当您有两个具有绝对相同 包和类名称的类时,“java”无法区分它们。

换句话说:这是不好的做法。你真的想避免这种情况。解决方案不是解决“我的工具在提示”,而是以更符合“标准 Java 约定”的方式组织您的源代码。

换句话说:最好的办法是重命名一些包,或者确保具有唯一的类名。

关于JAVA:与不同源文件夹下存在的相同包和类名称冲突,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/49126152/

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