標籤:
包是Java語言提供的一種區別類名字命名空間的機制,它是類的一種檔案組織和管理方式、是一組功能相似或相關的類或介面的集合。Java package提供了存取權限和命名的管理機制,它是Java中很基礎卻又非常重要的一個概念。
一、包的作用
1 把功能相似或相關的類或介面組織在同一個包中,方便類的尋找和使用。
2 如同檔案夾一樣,包也採用了樹形目錄的儲存方式。同一個包中的類名字是不同的,不同的包中的類的名字是可以相同的,當同時調用兩個不同包中相同類名的類時,應該加上包名加以區別。因此,包可以避免名字衝突。
3 包也限定了存取權限,擁有包存取權限的類才能訪問某個包中的類。
二、包的定義
在一個.java檔案中可以一個public類和多個非public類,如果要將這些類組織在一個包當中,則在.java檔案中除注釋以外的第一行使用關鍵字package即可實現。當需要調用此包中的類時,就可以使用關鍵字import進行匯入。在定義包的時候,應該注意幾點:
1 為了盡量使包名保持唯一性,包名通常採用小寫、按倒寫互連網址的形式進行定義。如:com.hank.www表示包檔案放置的檔案路徑為com/hank/www。
2 在進行命名包時,應該避免使用與系統發生衝突的名字,如java.lang、java.swing等。
三、java包建立和使用步驟
步驟1在C盤根目錄下建立java檔案夾,其下放置有源檔案HelloWorld.java和MyTest.java。編寫封裝來源檔案代碼HelloWorld.java和測試源檔案代碼MyTest.java。如下:
//HelloWorld.java
package com.hank.www;
public class HelloWorld
{
public HelloWorld(){System.out.println("Hello,World !");}
public void display(){System.out.println("Welcome to the java programming world !");}
}
//MyTest.java
import com.hank.www.HelloWorld;
public class MyTest
{
public static void main(String[] args)
{
HelloWorld hw=new HelloWorld();
hw.display();
}
}
步驟2在c:/java檔案夾下建立目錄檔案夾以儲存包,路徑為:c:/java/com/hank/www,此例中將HelloWorld.class存放在c:/java/com/hank/www檔案夾下。
步驟3 編譯源檔案HelloWorld.java,首先應該進入源檔案夾,即為cd c:/java->javac –d c:/java HelloWorld.java,產生的HelloWorld.class便存放在c:/java/com/hank/www檔案夾下。
步驟4 編譯測試檔案MyTest.java,即為javac MyTest.java,運行java MyTest即實現了包的建立和匯入。
[注]:在使用命令javac –d <directionary>之前,必須在c:/java中先建立好包路徑c:/java/com/hank/www,因為該命令不會自動建立檔案夾。
Reference:
Bruce Eckel <<Thinking in Java>>4-th Edition
www.sun.com <<jdk1_5_0 documents>>
www.chblogs.com/guenli/articles/1063102.html
java包的使用