我正在阅读我能找到的每一个教程以及一本书,仍然琐碎的概念让我提出问题:
CLASSPATH
是一个在 JVM 中注册的变量,它告诉 java 开始查找 classes/jars/etc 的根目录?import
类似于 include (C/C++) 但通过包提供命名空间?我刚刚阅读了如何在不使用 import 的情况下为每个类(使用 FQCN)显式声明包/命名空间,例如 java.util.String (可能是无效的借口),因为使用 import java.util 将允许我在其他任何地方代码简单地将类称为字符串。
让我对导入感到困惑的是一些使用导入的示例,例如:
import java.util.*; // import all public classes from java.util package
import java.util.Hashtable; // import only Hashtable class (not all classes in java.util package)
是的,这篇文章也跟进了:
请注意,我们可以调用存储在包级别的公共类,我们只进行导入。我们不能使用任何属于我们导入包的子包的类。例如,如果我们导入包world
,我们可以只使用HelloWorld
类,但不能使用HelloMoon
类。
那么,当我在导入中使用 * 时,是不是递归地导入所有子包?