首页
学习
活动
专区
工具
TVP
发布
社区首页 >问答首页 >为什么在Java import语句中使用通配符是不好的?

为什么在Java import语句中使用通配符是不好的?
EN

Stack Overflow用户
提问于 2008-09-29 11:55:51
回答 8查看 190.2K关注 0票数 501

使用像这样的单个语句会更方便、更简洁

代码语言:javascript
复制
import java.awt.*;

而不是导入一堆单独的类

代码语言:javascript
复制
import java.awt.Panel;
import java.awt.Graphics;
import java.awt.Canvas;
...

import语句中使用通配符有什么问题?

EN

回答 8

Stack Overflow用户

发布于 2008-09-29 04:05:05

它使您的命名空间变得混乱,要求您完全指定任何不明确的类名。最常见的情况是:

代码语言:javascript
复制
import java.util.*;
import java.awt.*;

...
List blah; // Ambiguous, needs to be qualified.

它还有助于使您的依赖关系具体化,因为您的所有依赖关系都列在文件顶部。

票数 26
EN

Stack Overflow用户

发布于 2008-09-29 03:59:12

我更喜欢特定的导入,因为它允许我查看文件中使用的所有外部引用,而无需查看整个文件。(是的,我知道它不一定会显示完全限定的引用。但只要有可能,我就会避免使用它们。)

票数 11
EN

Stack Overflow用户

发布于 2008-10-10 15:57:57

在以前的一个项目中,我发现将*-imports改为特定的导入可以将编译时间减少一半(从大约10分钟减少到大约5分钟)。*-import让编译器在列出的每个包中搜索与您使用的类匹配的类。虽然这个时间可能很小,但对于大型项目来说,这是很重要的。

*-import的一个副作用是,开发人员会复制和粘贴常见的导入行,而不是考虑他们需要什么。

票数 10
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/147454

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档