java import无用类或包时
在使用IDEA开发Java程序的时候,经常在写完一段代码后,按下快捷键ctrl + alt + o
来优化import引入的类或包。比如,会去除掉没有使用到的import类或包,或者将多个同一包下的类替换为*。
如果在代码中引入了没有使用到的类/包,对程序会有什么影响呢?
下面是一个测试类:
import java.util.List;
import java.io.*;
import java.math.BigDecimal;
public class Test {
public static void main(String[] args) {
List list = null;
File file = null;
}
}
测试类有下面三种类型的引入:
- 仅对某个使用到的类进行引入(List)
- 引入某个类所在的整个包(File)
- 引入一个未使用到的类(BigDecimal)
下面我们编译Test类,然后查看class文件如下:
//
// Source code recreated from a .class file by IntelliJ IDEA
// (powered by Fernflower decompiler)
//
import java.io.File;
import java.util.List;
public class Test {
public Test() {
}
public static void main(String[] args) {
List list = null;
File file = null;
}
}
可以看见在编译完成后,仅仅会引入我们使用到的类。所以在java代码中引入没有使用到的类时,对程序运行没有影响,但是对编译的过程会有点影响。
-- end -