Java 包
Java 包和 API
Java 中的包用于对相关类进行分组。可以把它想象成 **文件目录中的文件夹**。我们使用包来避免名称冲突,并编写更易于维护的代码。包分为两类
- 内置包(来自 Java API 的包)
- 用户定义的包(创建您自己的包)
内置包
Java API 是一个预先编写的类库,可以免费使用,包含在 Java 开发环境中。
该库包含用于管理输入、数据库编程等的组件。完整列表可以在 Oracle 网站上找到:https://docs.oracle.com/javase/8/docs/api/.
该库分为 **包** 和 **类**。这意味着您可以导入单个类(及其方法和属性),也可以导入包含属于指定包的所有类的整个包。
要使用库中的类或包,您需要使用 import
关键字
语法
import package.name.Class; // Import a single class
import package.name.*; // Import the whole package
导入一个类
如果您找到要使用的类,例如 Scanner
类,**用于获取用户输入**,请编写以下代码
示例
import java.util.Scanner;
在上面的示例中,java.util
是一个包,而 Scanner
是 java.util
包中的一个类。
要使用 Scanner
类,请创建该类的对象并使用 Scanner
类文档中找到的任何可用方法。在我们的示例中,我们将使用 nextLine()
方法,该方法用于读取完整行
示例
使用 Scanner
类获取用户输入
import java.util.Scanner;
class MyClass {
public static void main(String[] args) {
Scanner myObj = new Scanner(System.in);
System.out.println("Enter username");
String userName = myObj.nextLine();
System.out.println("Username is: " + userName);
}
}
导入包
有很多包可供选择。在之前的例子中,我们使用了来自java.util
包的Scanner
类。这个包还包含日期和时间工具、随机数生成器和其他实用程序类。
要导入整个包,在语句末尾添加一个星号 (*
)。以下例子将导入java.util
包中的所有类。
用户定义的包
要创建自己的包,你需要了解 Java 使用文件系统目录来存储它们,就像你电脑上的文件夹一样。
示例
└── root └── mypack └── MyPackageClass.java
要创建包,使用package
关键字。
MyPackageClass.java
package mypack;
class MyPackageClass {
public static void main(String[] args) {
System.out.println("This is my package!");
}
}
将文件保存为MyPackageClass.java,并编译它。
C:\Users\你的用户名>javac MyPackageClass.java
然后编译包。
C:\Users\你的用户名>javac -d . MyPackageClass.java
这将强制编译器创建“mypack”包。
-d
关键字指定保存类文件的目标位置。你可以使用任何目录名,例如 c:/user(Windows),或者如果你想将包保存在同一个目录中,你可以使用点号 ".
",就像上面的例子一样。
注意:包名应该写成小写,以避免与类名冲突。
当我们在上面的例子中编译包时,会创建一个名为“mypack”的新文件夹。
要运行MyPackageClass.java文件,请写入以下内容。
C:\Users\你的用户名>java mypack.MyPackageClass
输出结果将是
这是我的包!