套件(package)
我們知道在Java語法中,套件語法只要在前面宣告package的關鍵字並依照個人不同需求去
規劃套件的位置,今天我們就深入探討package語法的作用,我們知道套件的命名會影響整
理專案開發和日後的維護系統工作,易讀且統一的套件命名方式,讓人容易理解且易工作。
我們通常會以公司別為命名方式,例如Sun公司為com.sun,Apple公司為com.apple以此類
推。其次為系統層實務上依專案大小來規劃,例如Sun的人資系統為com.sun.hr或是Sun人資
系統中出勤系統com.sun.hr.pd。 最後一層為技術層依使用的框架或是技術來區分,例如Sun
人資系統使用MVC開發: model: com.sun.hr.model、com.sun.hr.view, com.sun.hr.controoler來
規劃。
匯入(import)
在JAVA中不同的套件之間,要互相引用時我們可以利用import來載入裡面的類別。
import com.sun.hr.utility.* => 載入utility底下的class類別
import com.sun.hr.utility.salaryUtil => 只載入salaryUtil的類別
不管是*還是salaryUtil編譯器會只會對有用到的類別參考使用,所既使載入全部以不會影響執
行效能,建議開發程式只需要載入用到的類別,以方便日後維護工作。
套件與存取控制
利用package套件系統只要可以建立不同的命名空間(namespace)來組合系統不同組件,當我
宣告不同修飾子(private、protected和public)分別是由嚴謹權限控制到鬆散權限控制。
修飾子 | class | extend | 相同package下 | 不同package下 |
private | V | X | X | X |
protected | V | V | V | M (需要繼承才可以) |
public | V | V | V | V |
defult | V | X | V | V |
V: 支援 X:不支援 M:需要特殊條件才知援
套件與存取控制
當我們宣告命名空間為com.hp.hr.utility,實際上在檔案目錄中為 com/hp/hr/utility 的路徑,
package com.hp.hr.utility => com/hp/hr/utility (檔案系統)
留言
張貼留言