二、Java面向對象(7)_封裝思想——package語句
2018-04-30
package語句
一、package關鍵字
為了更好地組織類,Java 提供了包機制,用於區別類名的命名空間。
包的作用:
1.把功能相似或相關的類或接口組織在同一個包中,方便類的查找和使用。
2.如同文件夾一樣,包也采用了樹形目錄的存儲方式。同一個包中的類名字是不同的,不同的包中的類的名字是可以相同的,當同時調用兩個不同包中相同類名的類時,應該加上包名加以區別。因此,包可以避免名字沖突。
3.包也限定了訪問權限,擁有包訪問權限的類才能訪問某個包中的類。
java 使用包(package)這種機制是為了防止命名沖突,訪問控制,提供搜索和定位類(class)、接口、枚舉(enumerations)和註釋(annotation)等。
包語句語法格式:package 包名.字包名.子子包名
必須把該語句作為java文件中第一行代碼(所有代碼之前。)
二、package實踐用法
- 包名如何定義
Java的包名都有小寫單詞組成,類名首字母大寫;包的路徑符合所開發的 系統模塊的 定義,比如生產對生產,物資對物資,基礎類對基礎類。以便看了包名就明白是哪個模塊,從而直接到對應包裏找相應的實現。
由於Java面向對象的特性,每名Java開發人員都可以編寫屬於自己的Java Package,為了保障每個Java Package命名的唯一性,在最新的Java編程規範中,要求開發人員在自己定義的包名前加上唯一的前綴。由於互聯網上的域名稱是不會重復的,所以多數開發人員采用自己公司在互聯網上的域名稱作為自己程序包的唯一前綴。例如: com.sun.swt.……。
從而,我們知道,一般公司命名為“com.公司名.項目名.模塊名....”。
那,我們個人的項目又怎麽命名呢?
經過我對“個人的”單詞搜索,有“individual、personal、private、one-man”,進一步對以上4個單詞詞意的分析,並在保證了唯一性,使用每個單詞的前4個字母作為前綴,正好和“com”也做了區分。如下:
indi :
個體項目,指個人發起,但非自己獨自完成的項目,可公開或私有項目,copyright主要屬於發起者。
包名為“indi.發起者名.項目名.模塊名.……”。
pers :
個人項目,指個人發起,獨自完成,可分享的項目,copyright主要屬於個人。
包名為“pers.個人名.項目名.模塊名.……”。
priv :
私有項目,指個人發起,獨自完成,非公開的私人使用的項目,copyright屬於個人。
包名為“priv.個人名.項目名.模塊名.……”。
onem :
與“indi”相同,推薦使用“indi”。
另外,我為了區分團隊項目和前面所說項目的區分,還有了一下擴展:
team :
團隊項目,指由團隊發起,並由該團隊開發的項目,copyright屬於該團隊所有。
包名為“team.團隊名.項目名.模塊名.……”。
com :
公司項目,copyright由項目發起的公司所有。
包名為“com.公司名.項目名.模塊名.……”。
2.java(jdk)中的包名
重點掌握這幾種:
二、Java面向對象(7)_封裝思想——package語句