我知道 java.lang
包会被我们编写的每个 java 程序自动导入,因此其中的所有类都自动可供我们使用。
我的问题是为什么不自动导入 java.util
和其他包?这肯定会节省一些打字:)
所以请解释为什么没有这样做。
最佳答案
不自动导入太多的一个很好的理由是避免命名空间冲突。例如,如果 java.util
中的所有内容都是自动导入的,然后您想要引用另一个名为“Map”的类,则必须通过其完全限定名称来引用它。
作为对该线程中其他答案的回应,import
实际上并没有修改您的类文件的内部表示。其实这里是一个link描述类文件结构的 JVM 规范:请注意导入未存储在任何地方。
关于java - 为什么只自动导入 java.lang 包?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2073680/