1. 程式人生 > >Android開發規範:Java命名規範

Android開發規範:Java命名規範

文章目錄

類名

採用大駝峰命名法。

  1. 命名規則:功能+型別(Activity、Adapter、Service等)。
  2. 舉例:
    activity類,命名以Activity為字尾,如:LoginActivity
    fragment類,命名以Fragment為字尾,如:ShareDialogFragment
    service類,命名以Service為字尾,如:DownloadService
    broadcastReceiver類,命名以Receiver為字尾,如:JPushReceiver
    contentProvider類,命名以Provider為字尾,如:ShareProvider
    資料庫類,命名以DBHelper為字尾,如:UserDBHelper
    adapter類,命名以Adapter為字尾,如:CouponListAdapter
    解析類,命名以Parser為字尾,如:NewsParser
    工具類,命名以Util為字尾,如:EncryptUtil
    模型類,命名以Bean為字尾,如:CouponBean
    介面實現類,命名以Impl為字尾,如:ApiImpl
    自定義共享基礎類,命名以Base開頭,如:BaseActivity
    測試類,命名以它要測試的類的名稱開始,以Test結束。例如:HashTest
    注:
    抽象類命名字尾加”Abstract”。如:abstract DeviceAbstract。
    介面類命名字尾加“Contract”。如:interface DeviceContract。

方法名

採用小駝峰命名法。

  1. 命名規則:動詞或動名詞。如:run()、addCard()。
  2. 舉例:
    初始化方法,命名以init開頭,如:initView
    按鈕點選方法,命名以to開頭,如:toLogin
    設定方法,命名以set開頭,如:setData
    具有返回值的獲取方法,命名以get開頭,如:getData
    通過非同步載入資料的方法,命名以load開頭,如:loadData
    布林型的判斷方法,命名以is、has或check,如:isEmpty、checkNull
    對資料進行處理,命名以handle或process開頭,如:handleUserInfo、processUserInfo
    彈出提示框,命名以display或show開頭,如:displayAgreement
    更新資料,命名以update開頭,如:updateXX
    儲存資料,命名以save開頭,如:saveXX
    重置資料,命名以reset開頭,如:resetXX
    清除資料,命名以clear開頭,如:clearXX
    查詢資料,命名以retrieve開頭,如:retrieveXX
    移除資料,命名以remove開頭,如:removeXX
    繪製資料,命名以draw開頭,如:drawXX

變數名

採用小駝峰命名法。變數命名應該簡短有規則。

  1. 命名規則:
    變數名不應以下劃線和美元符號開頭。
    所有變數都要顯示地賦值。
    布林變數應該包含Is,如IsFirstLogin。
    引數的命名和方法的命名相同,但是要保證引數名稱為一個單詞的情況下使引數命名的含義更為明確。
  2. 舉例:
    按照不同的變數型別,變數命名規則有所不同,基本結構為scope+VariableName+Type:
    1. 類變數(成員變數)
      非公有的變數前面要加上小寫m,

      靜態變數前面加上小寫s,

      其它變數以小寫字母開頭,

      常量、靜態變數全大寫。
      例如:

      public class MyClass {
          public static final int SOME_CONSTANT = 42;
          public int publicField;
          private static MyClass sSingleton;
          int mPackagePrivate;
          private int mPrivate;
          protected int mProtected;
      }
      

      注:
      Java的屬性變數名都以小寫字母開頭,如:userName,showMessage等
      比如我們常會定義一些Bean類,裡面的變數都是為了生成get和set的。

    2. 區域性變數
      變數為一個單詞,以小寫字母開頭;
      如:CouponBean bean;

    3. 引數:
      同區域性變數;

    4. 臨時變數
      臨時變數通常被取名為i、j、k、m和n,它們一般用於整型;c、d、e,它們一般用於字元型。 如:for (int i = 0; i < len ; i++)。

    5. 型別變數
      型別變數可用以下兩種風格之一進行命名:
      單個的大寫字母,後面可以跟一個數字(如:E, T, X, T2)。
      或者以類命名方式(參考3.2 類名),後面加個大寫的T(如:RequestT, FooBarT)。

    6. 控制元件變數
      Android中有很多UI控制元件作為成員變數,為了和java的成員變數區分開了,UI控制元件型別的成員變數在遵循前面成員變數命名規範的前提下,後面統一再加上控制元件名稱。
      比如:private TextView mDescriptionTextView;
      有些規則是在後面加上控制元件的縮寫,個人感覺縮寫不如全名來的美觀,而且易於理解。