Java 中建立包

什麼是 Java 中的包(Package)?

Package 是相關類的集合。它有助於將你的類組織成資料夾結構,並使其易於查詢和使用。更重要的是,它有助於提高可重用性。

Java 中的每個包都有其唯一的名稱,並將其類和介面組織到單獨的名稱空間或名稱組中。

雖然具有相同名稱的介面和類不能出現在同一個包中,但它們可以出現在不同的包中。這可以通過為每個包分配單獨的名稱空間來實現。

語法:-

package nameOfPackage;

讓我們用一個例子來研究包。我們定義一個類和物件,然後在我們的包 p1 中編譯它。編譯之後,我們將程式碼作為 java 包執行。

步驟 1: 考慮以下程式碼,

package p1; 

class c1(){ 
	public void m1(){ 
		System.out.println("m1 of c1"); 
	}
	
	public static void main(string args[]) { 
		c1 obj = new c1(); 
		obj.m1(); 
	}
}

這裡,

  1. 要將類放入包中,在第一行程式碼中定義包 p1
  2. 建立一個類 c1
  3. 定義列印行的方法 m1。
  4. 定義主要方法
  5. 建立類 c1 的物件
  6. 呼叫方法 m1

步驟 2: 在下一步中,將此檔案另存為 demo.java

步驟 3: 在這一步中,我們編譯檔案。

java demo.java

編譯完成。建立一個類檔案 c1。但是,沒有建立包?下一步有解決方案

步驟 4: 現在我們必須建立一個包,使用命令

javac d . demo.java

此命令強制編譯器建立包。

. 運算子代表當前的工作目錄。

步驟 5: 執行程式碼時,它會建立一個包 p1。當你在裡面開啟 java 包 p1 時,你會看到 c1.class 檔案。

步驟 6: 使用以下程式碼編譯同一檔案

javac d .. demo.java

這裡 .. 表示父目錄。在我們的案例中,檔案將儲存在父目錄 C 盤中

執行上述程式碼時,檔案儲存在父目錄中。

步驟 7: 現在假設你想在我們現有的 java 包 p1 中建立一個子包 p2。然後我們將修改我們的程式碼

package p1.p2

步驟 8: 編譯檔案

它建立了一個子包 p2,包中包含類 c1。

步驟 9: 要執行程式碼,請提及類的完全限定名稱,即包名稱後跟子包名稱,後跟類名稱 -

java p1.p2.c1

這是包的執行方式,並從程式碼檔案中輸出 m1 of c1

匯入包

要建立類的物件(捆綁在包中),在程式碼中必須使用其完全限定名稱。

例:

java.awt.event.actionListner object = new java.awt.event.actionListner();

但是,為要使用的每個類鍵入長點分隔的包路徑名稱可能會變得很繁瑣。相反,建議你使用 import 語句。

語法

import packageName;           

匯入後,你可以使用該類而不提及其完全限定名稱。

import java.awt.event.*; //* signifies all classes in this package are imported
import javax.swing.JFrame //here only the JFrame class is imported
//Usage
JFrame f = new JFrame; //without fully qualified name.

示例:匯入包

步驟 1: 將程式碼複製到編輯器中。

package p3;
import p1.*; //imports classes only in package p1 and NOT  in the sub-package p2
class c3{
  public   void m3(){
     System.out.println("Method m3 of Class c3");
  }
  public static void main(String args[]){
    c1 obj1 = new c1();
    obj1.m1();
  }
}

步驟 2: 將檔案另存為 Demo2.java。使用命令** javac -d 編譯檔案。Demo2.java**

步驟 3: 使用命令** java p3.c3** 執行程式碼

Package - 注意事項:

  • 為了避免命名衝突,包中給出了公司域名的名稱,反之例如:com.tastones, com.microsoft,com.infosys 等
  • 未指定包名時,類位於預設包(當前工作目錄)中,並且包本身沒有名稱。因此,你可以提前執行分配。
  • 在建立包時,應注意必須在任何其他 import 語句之前寫入建立包的語句
//not allowed
import package p1.*;
package p3;
//correct syntax
package p3;
import package p1.*;

對於你在 Java 中建立的任何類,預設情況下都會匯入* java.lang 包*。

Java API 非常廣泛,包含幾乎可以執行從資料結構操作到網路的所有程式設計任務的類。通常,你將在程式碼中使用 API​​檔案。你可以看到 API 文件這裡。