📜  Java中的类路径

📅  最后修改于: 2022-05-13 01:55:38.703000             🧑  作者: Mango

Java中的类路径

Java中的包是一种封装一组类、子包和接口的机制。包用于:

  • 防止命名冲突。例如,在两个包中可以有两个名为 Employee 的类,college.staff.cse.Employee 和 college.staff.ee.Employee
  • 使类、接口、枚举和注释的搜索/定位和使用更容易
  • 提供受控访问:受保护和默认具有包级别的访问控制。同一包中的类及其子类可以访问受保护的成员。默认成员(没有任何访问说明符)只能由同一包中的类访问。

包可以被认为是数据封装(或数据隐藏)。在这里,我们将讨论在Java中编程时 CLASSPATH 环境变量的责任,因为我们肯定会在短期内使用导入语句。

插图:

import org.company.Menu 

这个导入是什么意思?它使包 org.company 中的 Menu 类对我们当前的类可用。这样当我们如下调用以下命令时:

Menu menu = new Menu();   

例子

Java
// Java Program to Illustrate Usage of importing
// Classes from packages and sub-packages
  
// Here we are importing all classes from
// java.io (input-output package)
import java.io.*;
  
// Main class
class GFG {
  
    // Main driver method
    public static void main(String[] args)
    {
  
        // Print statement
        System.out.println("I/O classes are imported from java.io package");
    }
}


输出
I/O classes are imported from java.io package

该包通过数据流、序列化和文件系统提供系统输入和输出。除非另有说明,否则将 null 参数传递给此包中任何类或接口中的构造函数或方法将导致抛出 NullPointerException。此处列出的所有类都是导入的,或者如果我们要导入特定的类,请按如下所述使用它。

import java.util.Scanner ;

遍历系统上的每个文件夹并搜索它是不切实际的。因此,使用 CLASSPATH 变量,我们为它提供了我们希望它查看的位置。我们将目录和 jars 放在 CLASSPATH 变量中。

假设上面的包位于目录dir中。 Menu类文件的完整路径是dir/org/company/Menu。我们将仅在类路径变量中指定目录dir ,因为有关路径的其余信息由 import 语句提供。 jar 类似,如果您创建一个 jar 并在变量中提及其路径,VM 将在 jar 文件中查找并找到该类。

一个人应该知道如何设置一个类路径,如果在配置 JDK 之后没有完成操作系统,以便查看它或查看它并玩多个 IDE,版本游戏。必须对它有一个绝对清晰的认识。