來(lái)源:北大青鳥總部 2019年11月29日 10:42
你還記得當(dāng)初你加入java程序員行列時(shí)候的誓言嗎?你還記得熬過(guò)了多少夜晚就為了漲工資的畫面嗎?你還記得你為什么會(huì)選擇加入java程序員這個(gè)行業(yè)嗎?我想我們都為了成為一名優(yōu)秀的的程序員,今天,小編整理一份文檔關(guān)于《如何成為一名優(yōu)秀的java程序員》,希望能幫助到大家!
A、規(guī)則(1–2 級(jí))
1、在switch 中每個(gè) case 語(yǔ)句都應(yīng)該包含 break 或者 return 。
2、不要使用空的for 、if 、while 語(yǔ)句。
3、在運(yùn)算中不要減小數(shù)據(jù)的精度。
4、switch 語(yǔ)句中的 case 關(guān)鍵字要和后面的常量保持一個(gè)空格,switch 語(yǔ)句中不要定義case 之外的無(wú)用標(biāo)簽。
5、不要在if 語(yǔ)句中使用等號(hào)= 進(jìn)行賦值操作。
6、靜態(tài)成員或者方法使用類名訪問(wèn),不使用句柄訪問(wèn)。
7、方法重載的時(shí)候,一定要注意方法名相同,避免類中使用兩個(gè)非常相似的方法名。
8、不要在ComponentListener.componentResized() 方法中調(diào)用 serResize() 方法。
9、不要覆蓋父類的靜態(tài)方法和私有方法。
10、不要覆蓋父類的屬性。
11、不要使用兩級(jí)以上的內(nèi)部類。
12、把內(nèi)部類定義成私有類。
13、去掉接口中多余的定義(不使用 public, abstract, static, final 等,這是接口中默認(rèn)的)。
14、不要定義不會(huì)被用到的局部變量、類私有屬性、類私有方法和方法參數(shù)。
15、顯式初始化所有的靜態(tài)屬性。
16、不要使用 System.getenv() 方法。
17、不要硬編碼 ‘\n’和‘\r’作為換行符號(hào)。
18、不要直接使用 java.awt.peer.* 里面的接口。
19、使用 System.arraycopy() ,不使用循環(huán)來(lái)復(fù)制數(shù)組。
20、避免不必要的 instanceof 比較運(yùn)算和類造型運(yùn)算。
21、不要在 finalize() 方法中刪除監(jiān)聽器(Listeners)。
22、在 finalize() 方法中一定要調(diào)用 super.finalize() 方法。
23、在 finalize() 方法中的 finally 中調(diào)用 super.finalize() 方法。
24、進(jìn)行字符轉(zhuǎn)換的時(shí)候應(yīng)該盡可能的較少臨時(shí)變量。
25、使用ObjectStream 的方法后,調(diào)用reset() ,釋放對(duì)象。
26、線程同步中,在循環(huán)里面使用條件測(cè)試(使用 while(isWait) wait() 代替 if(isWait) wait())。
27、不掉用 Thread 類的 resume(), suspend(), stop() 方法。
28、減小單個(gè)方法的復(fù)雜度,使用的 if, while, for, switch 語(yǔ)句要在10個(gè)以內(nèi)。
29、在Servlets中,重用JDBC連接的數(shù)據(jù)源。
30、減少在Sevlets中使用的同步方法。
31、不定義在包中沒(méi)有被用到的友好屬性、方法和類。
32、沒(méi)有子類的友好類應(yīng)該定義成 final 。
33、沒(méi)有被覆蓋的友好方法應(yīng)該定義成 final 。
B、建議(3級(jí)或以上)
34、為 switch 語(yǔ)句提供一個(gè) default 選項(xiàng)。
35、不要在 for 循環(huán)體中對(duì)計(jì)數(shù)器的賦值。
36、不要給非公有類定義 public 構(gòu)建器。
37、不要對(duì)浮點(diǎn)數(shù)進(jìn)行比較運(yùn)算,尤其是不要進(jìn)行 ==, !=運(yùn)算,減少 >, < 運(yùn)算。
38、實(shí)現(xiàn) equals() 方法時(shí),先用 getClass() 或者 instanceof 進(jìn)行類型比較,通過(guò)后才能繼續(xù)比較。
39、不要重載 main() 方法用作除入口以外的其他用途。
40、方法的參數(shù)名不要和類中的方法名相同。
41、除了構(gòu)建器外,不要使用和類名相同的方法名。
42、不要定義 Error 和 RuntimeException 的子類,可以定義 Exception 的子類。
43、線程中需要實(shí)現(xiàn) run() 方法。
44、使用 equals() 比較兩個(gè)類的值是否相同。
45、字符串和數(shù)字運(yùn)算結(jié)果相連接的時(shí)候,應(yīng)該把數(shù)字運(yùn)算部分用小括號(hào)括起來(lái)。
46、類中不要使用非私有(公有、保護(hù)和友好)的非靜態(tài)屬性。
47、在類中對(duì)于沒(méi)有實(shí)現(xiàn)的接口,應(yīng)該定義成抽象方法,類應(yīng)該定義成抽象類。(5級(jí))
48、不要顯式導(dǎo)入 java.lang.* 包;
49、初始化時(shí)不要使用類的非靜態(tài)屬性。
50、顯式初始化所有的局部變量。
以上,就是小編整理的如何成為一名合格java程序員的文檔,希望幫助到大家!
————————————————
版權(quán)聲明:本文為CSDN博主「程序yang」的原創(chuàng)文章,經(jīng)授權(quán)發(fā)布本平臺(tái)!