让我们说,我有以下结构:
我希望first
包中的所有类都可以导入second
包中的所有类。
现在我只是为second
包中的每个类指定:
import first.*;
我可以为包中的所有类导入一次吗?
答案 0 :(得分:5)
不,不能这样做。
我不明白为什么会这么困难。
更好的解决方案是使用可以根据需要添加导入的IDE。
我还建议单独拼写每个拼写而不是使用星号,即使您需要导入所有拼写。它更好地记录了您的意图,并且IDE可以使您对它透明。
答案 1 :(得分:2)
不,你不能在Java中做到这一点。
您可能想到的一件事是将类从second
包移到first
,这样您就不需要导入了。但我明白,这并不总是可行/可取的。
答案 2 :(得分:1)
我可以为包中的所有类导入一次吗?
不,你不能。导入仅适用于声明它们的类 源文件。
也许我可以用import语句创建一些超类,然后每次都扩展它?
只有当子类中的代码根本没有提到外部类型的名称时才会这样做...这很少可能。
正如我所说,导入仅适用于声明它们的类 源文件。
实际上,import
是故意设计成以这种方式工作的。这个想法是让你轻松弄清楚一个类名所指的类。 (如果你不使用星级导入,效果最好......)