0

我是一名多年的 C# 开发人员,曾多次使用 Java。而现在因为要搬到移动开发领域,我开始更多地使用Java。

在这一点上,它可能看起来像一个简单的问题,但我仍然想知道在 Java 中我们可以导入单个类或整个包,而在 C# 中我们不能。除了减少自动补全中的额外推荐之外,这种“只导入一个类”有什么好处呢?

4

3 回答 3

9

自从 IDE 对自动导入管理的支持发展到您永远不需要自己编写导入语句以来,通配符导入就变得不明智了。

导入整个包可以而且确实会导致名称冲突:例如,bothjava.utiljava.awt声明 type List

将导入管理留给 IDE,不用担心。

于 2013-08-03T18:03:34.660 回答
0

Java 编码标准文档似乎对此没有任何意见。另一方面,@Marko Topolnik 的评论与 Netbeans 有点矛盾。最新版本似乎会在从给定包导入 5 个或更多类时生成通配符导入,否则不会发生冲突。我有根据的猜测是他们这样做是因为当使用大包时,导入列表会变得非常长。

话虽如此,当然最好的做法是使用 IDE——比如 Netbeans 或(根据我的经验不太顺利)Eclipse——它可以为您处理几乎所有的导入解析。

编辑

在讨论过程中,我们似乎发现 Netbeans 7.1 将 5 或更多合并到通配符的设置在以后的版本中被“取消”了。

于 2013-08-03T18:13:04.093 回答
-5

好吧,你只需要一个包中的一个类,你应该只导入这个类,因为你会导入整个包,它会减慢 java vm。

编辑:由于今天使用的自动完成功能,您如何导入类并不重要。

于 2013-08-03T18:05:50.203 回答