java - 为什么只自动导入 java.lang 包?

标签 java import

我知道 java.lang 包会被我们编写的每个 java 程序自动导入,因此其中的所有类都自动可供我们使用。

我的问题是为什么不自动导入 java.util 和其他包?这肯定会节省一些打字:)

所以请解释为什么没有这样做。

最佳答案

不自动导入太多的一个很好的理由是避免命名空间冲突。例如,如果 java.util 中的所有内容都是自动导入的,然后您想要引用另一个名为“Map”的类,则必须通过其完全限定名称来引用它。

作为对该线程中其他答案的回应,import 实际上并没有修改您的类文件的内部表示。其实这里是一个link描述类文件结构的 JVM 规范:请注意导入未存储在任何地方。

关于java - 为什么只自动导入 java.lang 包?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2073680/

相关文章:

java - 结合 java spring/thread 和数据库访问时间关键的 web 应用程序

java - butterknife @OnClick 不工作

mysql - 导入时强制 sqoop 重新创建 Hive 模式

包含 doctest.testmod() 的外部模块中的 python run 函数

java - 如何调用依赖于 rx 网络调用的非 rx 网络调用

java - 使用 Maven 属性连接到数据库

java - 当您不需要本地化时,是否有一种简约的方法来获取默认的 ResourceBundle?

Javascript:从另一个文件调用 D3 中的函数

java - 从文件中读取整数并将值存储到数组中

mysql - Docker compose不执行.sql