gpt4 book ai didi

java - 为什么要导入 NullPointerException 之类的 java.lang 类?

转载 作者:行者123 更新时间:2023-12-03 19:04:43 25 4
gpt4 key购买 nike

Java Language Specification说:

Every compilation unit implicitly imports every public type name declared in the predefined package java.lang, as if the declaration import java.lang.*; appeared at the beginning of each compilation unit immediately after any package statement. As a result, the names of all those types are available as simple names in every compilation unit.

然而,我有时会看到从 java.lang 导入类的代码,例如 import java.lang.NullPointerException;。这样做有什么充分的理由吗?

最佳答案

Is there any good reason for doing so?

几乎可以肯定不会。唯一可能的解释是,他们在当前包中定义了自己的NullPointerException,他们不想在当前类中使用它。 (而且你不应该那样做......)

最可能的解释是有人不懂 Java。

也可以通过 IDE 提示伪造导入来解释1。但这应该通过代码审查来识别,因此如果您在已发布的代码库中看到它,这是潜在的代码质量危险信号。

如果代码是由源代码生成器生成的而不是由人编写的,也可以解释这一点。这是可以原谅的,前提是它不会导致错误代码。


1 ...虽然我从未见过 IDE 为 java.lang 类执行此操作。

关于java - 为什么要导入 NullPointerException 之类的 java.lang 类?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/58585740/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com