我想知道是否可以在不改变包结构的情况下解决这个问题。
我有 2 个具有相同包结构的类似 Web 应用程序。类的名称也相同。
我想使用这些包的两个版本,并在第三个应用程序中从类创建对象。
作为一个例子,这样做的原因是我想创建一个单独的网络应用程序来管理这两个其他网络应用程序的用户帐户。两者的包结构都是 com/mycompany/User.java
问题(如我所见)是我不能在我的类路径中只包含这 2 个应用程序包结构,并且无法在创建对象时区分它们。
即
创建 User
对象时,如何指定我要从包 1 或包 2 创建它。我不想重构代码或更改应用程序包的方式结构化。
最佳答案
你不能这样做,在 java 中,一个类由他的包和他的名字标识,你不能在同一个包中有两个同名的类。
事实上,这确实是一个非常糟糕的做法,为什么你有两个具有完全相同名称的东西代表两个不同的东西?。更改您的包,至少在名称中包含应用程序名称:
com/mycompany/myapplication/User.java
关于java - 如何在 Java 应用程序中导入重复的包结构和类,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21737104/