程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 編程語言 >> JAVA編程 >> 關於JAVA >> JAVA程序代碼編寫規范

JAVA程序代碼編寫規范

編輯:關於JAVA
類的成員變量定義 
大部分類的成員變量應該定義為protected來防止繼承類使用他們。 
數組標識 
要用"int[]packets",而不是"intpackets[]",後一種永遠也不要用。 
成員變量與函數內局部變量用this 
publicvoidsetPackets(int[]packets){this.packets=packets;}//一般函數 
CounterSet(intsize){this.size=size;}//構造函數 
可讀性 
避免使用不易理解的數字,用有意義的標識來替代。不要使用難懂的技巧性很高的語句。 
源程序中關系較為緊密的代碼應盡可能相鄰。 
可移植性 
BorlandJbulider不喜歡synchronized這個關鍵字,如果你的斷點設在這些關鍵字的作用域內的話,調試的時候你會發現的斷點會到處亂跳,讓你不知所措。除非必須,盡量不要使用。 
換行 
如果要換行的話,盡量用println來代替在字符串中使用"\n"。 
你不要這樣:System.out.print("Hello,world!\n"); 
要這樣:System.out.println("Hello,world!"); 
或者構造一個帶換行符的字符串,至少要象這樣: 
Stringnewline=System.getProperty("line.separator"); 
System.out.print("Helloworld"+newline); 
PrintStream 
PrintStream已經被不贊成(deprecated)使用,用PrintWrite來代替她。 
排版規范 
關鍵詞和操作符之間加適當的空格。 
相對獨立的程序塊與塊之間加空行。 
較長的語句、表達式等要分成多行書寫。 
劃分出的新行要進行適應的縮進,使排版整齊,語句可讀。 
長表達式要在低優先級操作符處劃分新行,操作符放在新行之首。 
循環、判斷等語句中若有較長的表達式或語句,則要進行適應的劃分。 
若函數或過程中的參數較長,則要進行適當的劃分。 
不允許把多個短語句寫在一行中,即一行只寫一條語句。 
函數或過程的開始、結構的定義及循環、判斷等語句中的代碼都要采用縮進風格。 
編寫程序塊時‘{’和‘}’應各獨占一行並且位於同一列,同時與引用它們的語句左對齊。在函數體的開始、類的定義、結構的定義、枚舉的定義以及if、for、do、while、switch、case語句中的程序都要采用如上的縮進方式。 
性能 
在寫代碼的時候,從頭至尾都應該考慮性能問題。這不是說時間都應該浪費在優化代碼上,而是我們時刻應該提醒自己要注意代碼的效率。比如:如果沒有時間來實現一個高效的算法,那麼我們應該在文檔中記錄下來,以便在以後有空的時候再來實現她。 
不是所有的人都同意在寫代碼的時候應該優化性能這個觀點的,他們認為性能優化的問題應該在項目的後期再去考慮,也就是在程序的輪廓已經實現了以後。 
不要在循環中構造和釋放對象 
使用StringBuffer對象 
在處理String的時候要盡量使用StringBuffer類,StringBuffer類是構成String類的基礎。String類將StringBuffer類封裝了起來,(以花費更多時間為代價)為開發人員提供了一個安全的接口。當我們在構造字符串的時候,我們應該用StringBuffer來實現大部分的工作,當工作完成後將StringBuffer對象再轉換為需要的String對象。比如:如果有一個字符串必須不斷地在其後添加許多字符來完成構造,那麼我們應該使用StringBuffer對象和她的append()方法。如果我們用String對象代替StringBuffer對象的話,會花費許多不必要的創建和釋放對象的CPU時間。 
避免太多或不必要的使用synchronized關鍵字 
,應該在必要的時候再使用她,這是個避免死鎖的好方法。 
代碼測試、維護 
1.單元測試要求至少達到語句覆蓋。 
2.單元測試開始要跟蹤每一條語句,並觀察數據流及變量的變化。 
3.清理、整理或優化後的代碼要經過審查及測試。 
4.代碼版本升級要經過嚴格測試。
  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved