1 類上註釋:
/**
* 業務處理分發類
* 簡單說明
* @author name
* @since 2013-9-22
* @version 1.0
*/
public class BsController {}
2 方法註釋
2.1方法頭註釋
/**
* 加法運算
* 1 獲取操作數、操作符
* 2 相加
* 3 返回結果
* @author name
* @param leftNum:左操作數;rightNum:右操作數 說明每個參數的由來和去向、作用
* @param sum 相加結果
* @return sum:String 返回結果
*/
public String add(leftNum,rightNum) {}
說明:
(1)編輯myeclipse註釋模板
(2)使用alt+shift+j 來進行快捷註釋
2.2擴展註釋
2.2.1方法內常量註釋
(1)常量:在常量上,以/** */註釋
/**註釋內容*/
public static final String ITEM1 = "item1";
/**註釋內容*/
public static final String ITEM2 = "item2";
如果過多的話可以互相之間空一行;
如果常量的值爲可分割,帶有前綴的部分組成,例如
public static final String ITEM1 = "TEST_item1";
則不要將前綴寫死,重新定義一個變量,用來存儲前綴或組成部分;
String qianzhui = "Test";
public static final String ITEM1 = qianzhui+item1;
這裏使用的拼音不規範,僅作爲示範使用;
(2)變量註釋:
如果該變量是通過其他方法得到的,比如有一方法obtainResult()可以返回計算結果;則如下:
public static void execBs(){
String result;//聲明計算結果
result = obtainResult();//獲取結果
}
public static String obtainResult(){
return "10";
}
如果方法內使用到,且不能通過其他方法返回的,使用new來聲明;
如果該變量是外部引用變量,則在變量上方註釋使用@link 指向它所聲明的類、方法;該方式一般用於複雜的組件拆分中;
2.3查找某一變量有無被使用
(1)在當前java文件中選中該變量,使用ctrl+K
(2)選擇該變量,使用ctrl+alt+H
(3)在項目下,ctrl+H 選擇File Search標籤,在文件級別中查找;
2.4 註釋標明文檔
代碼中涉及遵循編碼規範的,比如某個字段,使用一種數字編碼,該編碼有專門的文檔來描述;那麼在給該字段註釋時,表明文檔存儲路徑;
該條適用於所有具有文檔規範的類、方法、字段等;
3 日誌記錄logger使用
(1)在項目中非不得已不使用syso來作爲調試手段;統一使用logger.info logger.error等輸出
(2)對於異常,在catch後 必須先記錄異常logger.error(e) 再處理異常
(3)(懶得導入logger了)
if(loggerDebug) logger.debug(test());和logger.debug(test());區別
前一種,如果開啓調試模式,則會運行debug中的test()函數,且有多少線程調用,則會運行多少次test();如果關閉調試模式,則不會運行裏面的debug方法
後一種,無論是否開啓調試模式,都會運行內部函數,導致性能下降的一方面原因;
4 構造函數的使用
在構造函數上註釋,說明爲什麼要用、在哪用該構造函數;
5 循環
(1)MAP循環使用增強型for循環
HashMap<String,String> map = new HashMap<String, String>();
for(String key:map.keySet()){
//循環取值
}
(2)while(值)改用for循環
int i = 0;//該種方式會造成循環標誌變量泄露
while(i<10){
//操作
i++;
}
//j僅在for中有效,無泄露問題
for(int j=0;j<10;){
//操作
j++;
}
6 判斷
(1)斷言
當某個變量不允許爲空的時候,即不允許發生的事情用斷言;
(2)if-else邏輯判斷
當欲判斷的變量允許可能爲空、可能有值的情況,使用if-else
7 對於使用對象
如果所用的不是java原生的,最好在“使用現場”直接使用,不要將其聲明爲全局變量;
如果是原生的,則要考慮其線程是否安全,背後是否有複雜操作;
8 判斷一個對象是否爲重量級
(1)背後是否爲非靜態代碼
(2)有多少臨時生成的變量、屬性
(3)後面引用了多少第三方組件
如果必須使用,考慮資源回收問題;