1、package命名要求包含的所有字符均為小寫,同時不能有特殊字符。
創(chuàng)新互聯(lián)公司-專業(yè)網站定制、快速模板網站建設、高性價比白塔網站開發(fā)、企業(yè)建站全套包干低至880元,成熟完善的模板庫,直接使用。一站式白塔網站制作公司更省心,省錢,快速模板網站建設找我們,業(yè)務覆蓋白塔地區(qū)。費用合理售后完善,十余年實體公司更值得信賴。
2、如果定義類的時候沒有使用package,那么java就認為我們所定義的類位于默認包里面(default package)。
3、java中的打包機制是為了防止程序多個地方出現(xiàn)相同的名字而將局部程序限定在一塊的機制
如:不同地區(qū)可能會存在 同名同姓的人,當要找其中一個人的時候就會產生混淆,為解決這個問題,我們不同地方的所有人(程序)分別打包。調用B的時候分別帶上a.B或者是b.B。這樣就不會出錯了。打包其實就是新建了一個文件夾,然后把需要打包的程序放在這個文件夾里面。
————————————————
1.使用完整描述符來準確地描述變量、字段或類。
例如,使用的名稱可以是 FirstName、GrandTotal 或 Corporate Customer。雖然像 x1、y1 或 fn 這樣的名稱較短容易輸入,但是它們并不提供任何信息指出它們所代表的內容。這樣對代碼的理解、維護和增強會造成一定困難。
2.使用適用于領域內的術語。
如果您的用戶將他們的客戶稱為顧客,則對這個類使用術語Customer來代替Client。許多開發(fā)人員曾經犯了這樣一個錯誤:當業(yè)界或領域中已存在更貼切的術語時,他們還冥思苦想,準備為一些概念創(chuàng)建通用術語。
3.巧妙節(jié)儉地使用縮寫。
這表示您應該維護一份標準短格式(縮寫)的列表,應該明智地選擇它們,并在使用時保持一貫性。例如,如果要使用字 arithmetic 的短格式, 選擇 ar、ari 或 art 中的一個,記錄下所選的縮寫(到底是哪個并不重要),并只使用這一個。
4.使用大小寫混合增強名稱的可讀性。
通常應該使用小寫字母,但是將類名和接口名稱的第一個字母寫成大寫,將所有非起始單詞的第一個字母也寫成大寫。
5.將標準首字母縮寫詞的第一個字母大寫。
名稱會經常包含標準縮寫,如 SQL 表示“Standard Query Language”。諸如表示屬性的 sqlDatabase 或表示類的 sQLDatabase 等名稱比sQLDatabase 和SQLDatabase 更便于閱讀。
6.避免長型名稱(最大 15 個字符比較合適)。
雖然類名 AllImplemented IterfacesAndSubclass 可能是個比較好的類名(當然,在此示例中有些夸張),但是這個名稱顯然太長,應該把它重命名為較短的名稱才好。
7.避免名稱過于相似或僅在大小寫方面有區(qū)別。
不應該同時使用變量名 myObject 和 myObjects,也不應該同時使用 myOraDatabase 和 anORADatabase。
擴展資料:
Java類的命名規(guī)范如下:
1、 項目名全部小寫
2、 包名全部小寫
3、 類名首字母大寫,如果類名由多個單詞組成,每個單詞的首字母都要大寫。
如:public class MyFirstClass{}
4、 變量名、方法名首字母小寫,如果名稱由多個單詞組成,每個單詞的首字母都要大寫。
如:int index=0;
public void toString(){}
5、 常量名全部大寫
如:public static final String GAME_COLOR=”RED”;
6、所有命名規(guī)則必須遵循以下規(guī)則:
1)、名稱只能由字母、數字、下劃線、$符號組成
2)、不能以數字開頭
3)、名稱不能使用JAVA中的關鍵字。
4)、堅決不允許出現(xiàn)中文及拼音命名。
參考資料:百度百科-Java
Package?的命名
Package?的名字應該都是由一個小寫單詞組成。
Class?的命名
Class?的名字必須由大寫字母開頭而其他字母都小寫的單詞組成
Class?變量的命名
變量的名字必須用一個小寫字母開頭。后面的單詞用大寫字母開頭。
Static?Final?變量的命名
Static?Final?變量的名字應該都大寫,并且指出完整含義。
參數的命名
參數的名字必須和變量的命名規(guī)范一致。
數組的命名
數組應該總是用下面的方式來命名:
byte[]?buffer;
而不是:
byte?buffer[];
方法的參數
使用有意義的參數命名,如果可能的話,使用和要賦值的字段一樣的名字:
SetCounter(int?size){
this.size?=?size;
}
變量名
普通變量命名應該采用首字母小寫,其他字母首字母大寫的方式。
final static變量的名字應該都大寫,并且指出完整含義。如果一個常量名稱由多個單詞組成,則應該用下劃線來分割這些單詞如。
NUM_DAYS_IN_WEEK MAX_VALU
如果需要對變量名進行縮寫時,一定要注意整個代碼中縮寫規(guī)則的一致性
context=ctx message=msg
通過在結尾處放置一個量詞,就可創(chuàng)建更加統(tǒng)一的變量
First(一組變量中的第一個) Last(一組變量中的最后一個) Next(一組變量中的下一個變量) Prev(一組變量中的上一個) Cur(一組變量中的當前變量)
無論什么時候,均提倡應用常量取代數字、固定字符串。也就是說,程序中除0,1以外,盡量不應該出現(xiàn)其他數字。
索引變量:i、j、k等只作為小型循環(huán)的循環(huán)索引變量。
邏輯變量:避免用flag來命名狀態(tài)變量,用is來命名邏輯變量。
if(isClosed){ dosomeworks; return; }
數組
總是使用以下方式定義數組:
int[] arr = new int[10];
禁止使用C語言的是形式:
禁止 int arr[] = new int[10];
集合
數組或者容器推薦命名方式為名詞+s的方式,例如:
List?persons = getPerson(); for(Person person : persons){ dosomeworks; }
泛型
應該盡量簡明扼要(最好是一個字母),以利于與普通的class或interface區(qū)分
Container中的Element應該用E表示;Map里的key用K表示,value用V;Type用T表示;異常用X表示
如果需要接收多個Type類型的參數,應該用鄰接T的大寫字母——例如S——來依次表示,當然也可以用T1, T2這樣的方式
public class HashSet?extends AbstractSet?{…} public class HashMapextends AbstractMap?{…} public class ThreadLocal?{…} public interface Functor?{ T val() throws X; }
推薦的命名
1.當要區(qū)別接口和實現(xiàn)類的時候,可以在類的后面加上“Impl”。
interface Container class ContainerImpl
2.Exception類最好能用“Exception”做為類命名的結尾
DataNotFoundException InvalidArgumentException
3.抽象類最好能用“Abstract”做為類命名的開頭
AbstractBeanDefinition AbstractBeanFactory
4. Test類最好能用“Test”做為類命名的結尾
ContainerTest
5.簡稱與縮寫(不推薦使用)
cp代表colorPoint buf代表buffer off代表offset len代表length
除非是在循環(huán)中,否則一般不推薦使用單個字母作為變量名,不過也有例外,即約定俗成的單個字母
b代表byte c代表char d代表double e代表Exception f代表float i, j, k代表整數 l代表long o代表Object s代表String v代表某些類型的特定值
代碼風格
花括號
花括號統(tǒng)一采用以下格式:
if(bool experssion){ dosomework; }
除非花括號中為空,不然任何情況下不能省略花括號,并且花括號必須換行,例如:
if(i==0){ return; } while(true) {}
以下寫法禁止出現(xiàn):
禁止 if(i != 0) return; 禁止 if(i !=0) {return;}
括號
括號的前,后一個字符不需要空格,例如:
Person p = new Person(“Jack”, 17);
空格
逗號之后緊跟一個空格。
Person p = new Person(“Jack”, 16, “China”);
二元操作符前后跟空格。
int i = a + b – c * d;
3. 一元操作符不需要空格,for語句分號后有空格。
for(int i = 0; I 10; i++){ dosomework; }
4. 括號前后不需要空格
類
類的定義結構按照順序為:
1) 常量
2) 成員變量
3) 構造函數
4) 成員函數
5) get和set方法
各個部分之間留出一個空行。
例如:
規(guī)范類模板:
class Person{ private final static int MAX_AGE = 100; private String firstname = “Jack”; public Person(){} public Person(String firstname){ this.firstname = firstname; } public void doExercise(){ dosomeworks; run(); } private void run(){ dosomeworks; } public getFirstname(){ return firstname; } public setFirstname(String firstname){ this.firstname = firstname; } }
2.構造函數
1) 參數為空的構造函數出現(xiàn)在最上方
2) 有調用關系的構造函數相鄰
3) 參數盡量由少到多從上至下排序
3.使用成員變量
在類的方法內引用成員變量了命名沖突以外,不使用this。非特殊情況在類的方法內都不使用get和set方法存取成員變量。
4.方法
有調用關系的方法盡量放在相鄰的位置,public和private方法可以交叉放置。
5.get和set方法,所有需要公開的成員變量都要符合良好的javabean規(guī)范,提供get和set方法,盡量使用IDE工具自動生成。
Javadoc注釋
在每個程序的最開始部分,一般都用Javadoc注釋對程序的總體描述以及版權信息,之后在主程序中可以為每個類、接口、方法、字段添加 Javadoc注釋,每個注釋的開頭部分先用一句話概括該類、接口、方法、字段所完成的功能,這句話應單獨占據一行以突出其概括作用,在這句話后面可以跟隨更加詳細的描述段落。在描述性段落之后還可以跟隨一些以Javadoc注釋標簽開頭的特殊段落,例如上面例子中的@auther和@version,這些段落將在生成文檔中以特定方式顯示