Java允许使用包(package)将类组织在一个集合中。借助包可以方便地组织你的代码,并将你自己的代码与其他人提供的代码库分开
🍔 一、包名
包名是Java中唯一的标识符,它是一个由小写字母、数字和下划线组成的字符串,每个包名都是唯一的。包名的命名规范是以域名反转作为前缀,例如com.example,这样可以避免包名冲突。
注意:从编译器角度来看,且套的包之间没有任何关系。例如,java.util包与java.util.jar包毫无关系。每一个包都是独立的类集合。
🧆 二、类的导入
在Java中,如果想要使用一个类,需要先导入该类。导入类的方式有两种,一种是使用import语句,另一种是使用全限定类名。
使用import语句导入类的语法如下:
import java.time.*;
使用全限定名导入类的语法如下:
java.time.LocalDate today = java.time.LocalDate.now();
🥘 三、静态导入
Java 5引入了静态导入,它可以让我们在代码中直接使用静态成员,而不需要使用类名来限定。静态导入的语法如下:
import static package.name.ClassName.*;
这样就可以在代码中直接使用ClassName中的静态成员,例如:
import static java.lang.Math.*; ... double x = sqrt(2);
🥘 四、在包中增加类
在Java中,我们可以将类组织在包中,这样可以更好地管理类和避免命名冲突。要在包中增加类,只需要在包的目录下创建一个.java文件,并在文件中定义类。
例如,如果要在com.example包中增加一个名为MyClass的类,可以在com/example目录下创建一个MyClass.java文件,并在文件中定义MyClass类。
注意:编译器处理文件(带有文件分隔符合扩展名.java的文件),而Java解释器加载类(带有 . 分隔符)。
🍱 五、包访问、类路径及设置类路径
在Java中,包访问是指只有在同一个包中的类才能访问该类的成员。如果要让其他包中的类访问该类的成员,需要将该成员声明为public或protected。
类路径是指JVM用来搜索类文件的路径,它可以包含多个目录或JAR文件。当我们使用Java命令来运行一个类时,JVM会在类路径中搜索该类的.class文件。
设置类路径
在Java中,可以通过设置CLASSPATH环境变量来设置类路径。例如,如果要将类路径设置为/home/user/myclasses目录和/home/user/mylib.jar文件,可以使用以下命令:
export CLASSPATH=/home/user/myclasses:/home/user/mylib.jar
也可以在运行Java命令时指定类路径,例如:
java -classpath /home/user/myclasses:/home/user/mylib.jar MyClass
这样就可以将类路径设置为/home/user/myclasses目录和/home/user/mylib.jar文件,并运行MyClass类。