Java导入类时为什么都不建议使用import xx.xx.*呢?
Java引用其他类共有两种方式:
- 按类型引用 :就是import 到某个类的全路径。
- 按需引用(不推荐):只import到某个类的包路径即可,如import java.util.*
按类型导入是已经确定了类型的,可以一次定位,而按需导入因为类是不确定的,就需要去查找定位。
注:两者不会存在性能问题,只是编译时较按类型慢一些(可忽略)。
import java.util.*;
import java.awt.*;
public class Test {
private List tests;
public static void main(String[] args) {
System.out.println("测试");
}
}
运行如上代码,发现报错。编译器即使找到 java.util.List匹配后不会停下搜索,而会继续寻找,找出所有的判断是否有类导入冲突。
java: 对List的引用不明确
java.awt 中的类 java.awt.List 和 java.util 中的接口 java.util.List 都匹配
综上分析可得,我们在日常的开发时,导入其他类推荐按类型导入。
Intellij IDEA(2021.2)设置如下:路径File—>Settings—>Editor—>Code Style—>Java—>Imports。
图中两处我这里是设置的99,大家可以根据自己的喜好设置。这两处的意思是当同包下导入的类超过设置数量(99)时自动变成按需导入。
版权声明:本文为qq_44150902原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。