關於檔案的切割 您可以將各個類別(class)獨立存成個別檔案。
用package把原始檔案裏面的類別(class)納進來 當遇上類別名稱(class name)相同的情況,這時候的權宜之計就是採用package(套件、套裝)的概念。 使用方法宣告一個package把類別包起來。就是在原來類別(class)程式的最前面再加上一行package宣告,這樣就不會再受到類別名稱相同的困擾了。 package package名稱 ; 用package把原始檔案裏面的類別(class)納進來
在package中納入class的程序: 在原來的工作目錄下,輸入「javac 目錄名稱\原始檔案名稱」,並加以編譯。 在原來的工作目錄下,輸入「javac package名稱.類別名稱」即可執行。
Sample3類別包含於package pa之中 class Sample3 { public static void main(String args[]) Car car1 = new Car(); car1.show(); } Sample3類別包含於package pa之中
隸屬在同一個package之中
使用不同package內的類別 從自己所屬的package內存取到其他package內的類別,有2件事您必須先完成: 被存取的類別,前面必須加上public 存取別人的類別的程式中,要清楚指定「被存取的package名稱.類別名稱」
使用不同package內的類別
package名稱和類別名稱 在一個大型的Java程式中,由於會存取大量的類別,因此類別名稱重複的機會很大,因此面對重複的類別名稱時應該如何加以區別,在Java內部有一塊空間專門用來蒐集類別名稱,這個空間被稱為namespace(名稱空間),只要隸屬於不同package的類別就會被存放在不同的namespace當中。由於這個機制,只要package名稱不同,就不必擔心類別名稱是否相同的問題。
關於匯入(import) 透過這種方式,在程式中如果要存取該類別時,完全不必再加上package名稱,只要直接使用類別名稱即可,上述這種方式在Java當中稱為匯入(import)。 import package名稱.類別名稱; 直接匯入其他package下的類別 import pc.Car Car car1 = new Car(); 此後終於不必再寫package名稱了
建立subpackage 當您的package愈來愈多時,按照類別的角色劃歸給不同的package,最後形成各種特殊作用的package,這種事先分類的做法對於未來進一步利用package撰寫程式有莫大的幫助。
類別庫的package Java早就把功能相近的類別(class)歸類到不同的package當中,下表是比較常用的package。 java.applet 與Java Applet相關的類別 java.awt 與視窗元件設計相關的類別 java.awt.event 與事件(event)相關的類別 java.lang 最基本的類別 java.io 與I/O相關的類別 java.net 與網路相關的類別 java.util 與Utility相關的類別
匯入多個類別 您如果要一口氣匯入同一個package下的多個類別,只要透過萬用字元(*)就能夠一次全部匯入。 Import java.io.* java.io下所有類別全部匯入 但是萬一您指定的package下還有sub package,則需看您要匯入哪一個sub package的類別,利用import指令在匯入一次sub package就好了。 import java.awt.*; import java.awt.image.*: sub package下的類別不會被匯入 您必須針對需要的sub package再匯入一次