企业🤖AI Agent构建引擎,智能编排和调试,一键部署,支持私有化部署方案 广告
### [使用其他组件](https://lingcoder.gitee.io/onjava8/#/book/03-Objects-Everywhere?id=%e4%bd%bf%e7%94%a8%e5%85%b6%e4%bb%96%e7%bb%84%e4%bb%b6) 无论何时在程序中使用预先定义好的类,编译器都必须找到该类。最简单的情况下,该类存在于被调用的源代码文件中。此时我们使用该类 —— 即使该类在文件的后面才会被定义(Java 消除了所谓的“前向引用”问题)。而如果一个类位于其他文件中,又会怎样呢?你可能认为编译器应该足够智能去找到它,但这样是有问题的。想象一下,假如你要使用某个类,但目录中存在多个同名的类(可能用途不同)。或者更糟糕的是,假设你正在编写程序,在构建过程中,你想将某个新类添加到类库中,但却与已有的类名称冲突。 要解决此问题,你必须通过使用**import**关键字来告诉 Java 编译器具体要使用的类。**import**指示编译器导入一个包,也就是一个类库(在其他语言中,一个库不仅包含类,还可能包括函数和数据,但请记住 Java 中的所有代码都必须写在类里)。大多数时候,我们都在使用 Java 标准库中的组件。有了这些构件,你就不必写一长串的反转域名。例如: ~~~ import java.util.ArrayList; ~~~ 上例可以告诉编译器使用位于标准库**util**下的 ArrayList 类。但是,**util**中包含许多类,我们可以使用通配符`*`来导入其中部分类,而无需显式得逐一声明这些类。代码示例: ~~~ import java.util.*; ~~~ 本书中的示例很小,为简单起见,我们通常会使用`.*`形式略过导入。然而,许多教程书籍都会要求程序员逐一导入每个类。