为什么我们在Java中使用包? 如何使用它们?
答案 0 :(得分:8)
包主要是只是一种组织代码的方式。 JDK有数千个类,大型应用程序有数千个类。为什么不想要将这些组织成某种层次结构,以便您轻松找到您感兴趣的课程?
包也参与Java中的访问控制(但不是在.NET中,有趣的是) - 但我要说的主要目的是帮助人组织他们的代码有意义。
它也意味着您可能偶尔需要或需要多个包中的相同类名 - 其中包名有效地提供了上下文。现在,如果你在单个代码库中为单个应用程序工作,那么通常要试图避免 - 但是如果你有一个大型代码库,许多不同的应用程序使用它的许多不同部分,这可能比尝试为每个类都有一个唯一的名称更好。 (一个典型的例子是用户界面代码 - 只是查看.NET库,在三个独立的UI框架中有三个独立的命名空间中的“Button”类。)
答案 1 :(得分:1)
将java中的包视为PC上的文件夹。您希望将不同类型的文件保存在不同的文件夹中,就像在java中的不同包中保留不同类型的类和接口一样。
通过这样做,我们获得了一些优势,其中一些列在下面 -
我们使用java关键字package
在包中定义类/接口,然后是包结构。它必须是您的类/接口的第一个声明。如果您没有定义软件包名称,那么该文件将被放置在默认软件包中,这是您的源代码文件夹。
package com.my.package.MyClass;
在java中使用包,前面是关键字import
。使用点(。)运算符访问包的级别,因为我们这样做' /'或者' \'以防PC上的文件夹。
在名为com \ my \ package的包中导入可用的类MyClass:
import com.my.package.MyClass;
导入名为com \ my \ package的程序包中的所有可用类:
import com.my.package.*;
只导入类的静态字段,以便您可以直接访问它而无需使用类名:
import static com.my.package.MyClass.myStaticField;
答案 2 :(得分:0)
包是一种对类似类进行分组的方法。您不希望将所有课程都放在一个包中,对吗?