溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務(wù)條款》

Java命名規(guī)范有哪些

發(fā)布時間:2021-06-24 14:35:43 來源:億速云 閱讀:140 作者:Leah 欄目:編程語言

這篇文章將為大家詳細(xì)講解有關(guān)Java命名規(guī)范有哪些,文章內(nèi)容質(zhì)量較高,因此小編分享給大家做個參考,希望大家閱讀完這篇文章后對相關(guān)知識有一定的了解。

基本命名規(guī)范

包命名

包名按照域名的范圍從大到小逐步列出,恰好和Internet上的域名命名規(guī)則相反。

由一組以“.”連接的標(biāo)識符構(gòu)成,通常***個標(biāo)識符為符合網(wǎng)絡(luò)域名的兩個或者三個英文小寫字母。

People  TestPage  XMLExample

類,接口命名

類的名字必須由大寫字母開頭而單詞中的其他字母均為小寫;如果類名稱由多個單詞組成,則每個單詞的首字母均應(yīng)為大寫例如TestPage;如果類名稱中包含單詞縮寫,則這個所寫詞的每個字母均應(yīng)大寫,如:XMLExample,還有一點命名技巧就是由于類是設(shè)計用來代表對象的,所以在命名類時應(yīng)盡量選擇名詞。

People  TestPage  XMLExample

方法名

方法的名字的***個單詞應(yīng)以小寫字母作為開頭,后面的單詞則用大寫字母開頭??梢詾閯釉~或動詞+名詞組合。

設(shè)置/獲取某個值的Method,應(yīng)該遵循setV/getV規(guī)范

返回長度的Method,應(yīng)該命名為length

測試某個布爾值的Method,應(yīng)該命名為isV

將對象轉(zhuǎn)換為某個特定類型的Mehod應(yīng)該命名為toF

getDate();  length();  isReady();  toOracleFormat();

變量名

1.普通變量命名應(yīng)該采用首字母小寫,其他字母首字母大寫的方式。

2.final static變量的名字應(yīng)該都大寫,并且指出完整含義。如果一個常量名稱由多個單詞組成,則應(yīng)該用下劃線來分割這些單詞如。

NUM_DAYS_IN_WEEK  MAX_VALU

3. 如果需要對變量名進行縮寫時,一定要注意整個代碼中縮寫規(guī)則的一致性

context=ctx  message=msg

4. 通過在結(jié)尾處放置一個量詞,就可創(chuàng)建更加統(tǒng)一的變量

First(一組變量中的***個)  Last(一組變量中的***一個)  Next(一組變量中的下一個變量)  Prev(一組變量中的上一個)  Cur(一組變量中的當(dāng)前變量)

5. 無論什么時候,均提倡應(yīng)用常量取代數(shù)字、固定字符串。也就是說,程序中除0,1以外,盡量不應(yīng)該出現(xiàn)其他數(shù)字。

6. 索引變量:i、j、k等只作為小型循環(huán)的循環(huán)索引變量。

7. 邏輯變量:避免用flag來命名狀態(tài)變量,用is來命名邏輯變量。

if(isClosed){  dosomeworks;  return;  }

數(shù)組

總是使用以下方式定義數(shù)組:

int[] arr = new int[10];

禁止使用C語言的是形式:

禁止  int arr[] = new int[10];

集合

數(shù)組或者容器推薦命名方式為名詞+s的方式,例如:

List<Person> persons = getPerson();  for(Person person : persons){  dosomeworks;  }

泛型

應(yīng)該盡量簡明扼要(***是一個字母),以利于與普通的class或interface區(qū)分

Container中的Element應(yīng)該用E表示;Map里的key用K表示,value用V;Type用T表示;異常用X表示

如果需要接收多個Type類型的參數(shù),應(yīng)該用鄰接T的大寫字母&mdash;&mdash;例如S&mdash;&mdash;來依次表示,當(dāng)然也可以用T1, T2這樣的方式

public class HashSet<E> extends AbstractSet<E> {&hellip;}   public class HashMap<K, V> extends AbstractMap<K, V> {&hellip;}   public class ThreadLocal<T> {&hellip;}   public interface Functor<T, X extends Throwable> {       T val() throws X;   }

推薦的命名

1.當(dāng)要區(qū)別接口和實現(xiàn)類的時候,可以在類的后面加上“Impl”。

interface Container  class ContainerImpl

2.Exception類***能用“Exception”做為類命名的結(jié)尾

DataNotFoundException  InvalidArgumentException

3.抽象類***能用“Abstract”做為類命名的開頭

AbstractBeanDefinition  AbstractBeanFactory

4. Test類***能用“Test”做為類命名的結(jié)尾

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代表整數(shù)   l代表long  o代表Object   s代表String   v代表某些類型的特定值

代碼風(fēng)格

花括號

花括號統(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”);

2. 二元操作符前后跟空格。

int i = a + b &ndash; c * d;

3. 一元操作符不需要空格,for語句分號后有空格。

for(int i = 0; I < 10; i++){  dosomework;  }

4. 括號前后不需要空格

類的定義結(jié)構(gòu)按照順序為:

1) 常量

2) 成員變量

3) 構(gòu)造函數(shù)

4) 成員函數(shù)

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.構(gòu)造函數(shù)

1) 參數(shù)為空的構(gòu)造函數(shù)出現(xiàn)在最上方

2) 有調(diào)用關(guān)系的構(gòu)造函數(shù)相鄰

3) 參數(shù)盡量由少到多從上至下排序

3.使用成員變量

在類的方法內(nèi)引用成員變量了命名沖突以外,不使用this。非特殊情況在類的方法內(nèi)都不使用get和set方法存取成員變量。

4.方法

有調(diào)用關(guān)系的方法盡量放在相鄰的位置,public和private方法可以交叉放置。

5.get和set方法,所有需要公開的成員變量都要符合良好的javabean規(guī)范,提供get和set方法,盡量使用IDE工具自動生成。

Javadoc注釋

在每個程序的最開始部分,一般都用Javadoc注釋對程序的總體描述以及版權(quán)信息,之后在主程序中可以為每個類、接口、方法、字段添加 Javadoc注釋,每個注釋的開頭部分先用一句話概括該類、接口、方法、字段所完成的功能,這句話應(yīng)單獨占據(jù)一行以突出其概括作用,在這句話后面可以跟隨更加詳細(xì)的描述段落。在描述性段落之后還可以跟隨一些以Javadoc注釋標(biāo)簽開頭的特殊段落,例如上面例子中的@auther和@version,這些段落將在生成文檔中以特定方式顯示

關(guān)于Java命名規(guī)范有哪些就分享到這里了,希望以上內(nèi)容可以對大家有一定的幫助,可以學(xué)到更多知識。如果覺得文章不錯,可以把它分享出去讓更多的人看到。

向AI問一下細(xì)節(jié)

免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點不代表本網(wǎng)站立場,如果涉及侵權(quán)請聯(lián)系站長郵箱:is@yisu.com進行舉報,并提供相關(guān)證據(jù),一經(jīng)查實,將立刻刪除涉嫌侵權(quán)內(nèi)容。

AI