學(xué)AI,好工作 就找北大青鳥(niǎo)
關(guān)注小青 聽(tīng)課做題,輕松學(xué)習(xí)
周一至周日
4000-9696-28

想要成為一名優(yōu)秀的Java程序員,這份文檔必讀(二)

來(lái)源:北大青鳥(niǎo)總部 2019年11月29日 11:20

摘要: 想要成為一名優(yōu)秀的Java程序員,這份文檔必讀(二)

你還記得當(dāng)初你加入java程序員行列時(shí)候的誓言嗎?你還記得熬過(guò)了多少夜晚就為了漲工資的畫(huà)面嗎?你還記得你為什么會(huì)選擇加入java程序員這個(gè)行業(yè)嗎?我想我們都為了成為一名優(yōu)秀的的程序員,今天,小編整理一份文檔關(guān)于《如何成為一名優(yōu)秀的java程序員》,希望能幫助到大家!

1574817623(1).jpg

51、按照方法名把方法排序放置,同名合同類(lèi)型的方法應(yīng)該放在一起。

52、不要使用嵌套賦值,即在一個(gè)表達(dá)式中使用多個(gè) = 。

53、不要在抽象類(lèi)的構(gòu)建器中調(diào)用抽象方法。

54、重載 equals() 方法的同時(shí),也應(yīng)該重載 hashCode() 方法。

55、工具類(lèi)(Utility)不要定義構(gòu)建器,包括私有構(gòu)建器。

56、不要在 switch 中使用10個(gè)以上的 case 語(yǔ)句。

57、把 main() 方法放在類(lèi)的最后。

58、聲明方法違例的時(shí)候不要使用 Exception ,應(yīng)該使用它的子類(lèi)。

59、不要直接扔出一個(gè)Error ,應(yīng)該扔出它的子類(lèi)。

60、在進(jìn)行比較的時(shí)候,總是把常量放在同一邊(都放在左邊或者都放在右邊)。

61、在可能的情況下,總是為類(lèi)定義一個(gè)缺省的構(gòu)建器。

62、在捕獲違例的時(shí)候,不使用 Exception, RuntimeException, Throwable,盡可能使用它們的子類(lèi)。

63、在接口或者工具類(lèi)中中定義常量。(5級(jí))

64、使用大寫(xiě)‘L’表示 long 常量。(5級(jí))

65、main() 方法必須是 public static void main(String[])。(5級(jí))

66、對(duì)返回類(lèi)型為 boolean 的方法使用 is 開(kāi)頭,其它類(lèi)型的不能使用。

67、對(duì)非boolean類(lèi)型取值方法(getter)使用 get 開(kāi)頭,其它類(lèi)型的不能使用。

68、對(duì)于設(shè)置值的方法(setter)使用 set 開(kāi)頭,其它類(lèi)型的不能使用。

69、方法需要有同樣數(shù)量參數(shù)的注釋 @param。

70、不要在注釋中使用不支持的標(biāo)記,如:@unsupported 。

71、不要使用 Runtime.exec() 方法。

72、不要自定義本地方法(native method)。

73、使用盡量簡(jiǎn)潔的的運(yùn)算符號(hào)。

74、使用集合時(shí)設(shè)置初始容量。

75、單個(gè)首字符的比較使用 charAt() 而不用 startsWith() 。

76、對(duì)于被除數(shù)或者被乘數(shù)為2的n次方的乘除運(yùn)算使用移位運(yùn)算符 >>, << 。

77、一個(gè)字符的連接使用‘ ’而不使用 “ ”,如:String a = b + ‘c’。

78、不要在循環(huán)體內(nèi)調(diào)用同步方法和使用 try—catch 塊。

79、不要使用不必要的布爾值比較,如:if (a.equals(b)), 而不是 if (a.equals(b)==true)。

80、常量字符串使用 String, 非常量字符串使用 StringBuffer 。

81、在循環(huán)條件判斷的時(shí)候不要使用復(fù)雜的表達(dá)式。

82、對(duì)于“if (condition) do1; else do2;”語(yǔ)句使用條件操作符“if (condition)?do1:do2;”。

83、不要在循環(huán)體內(nèi)定義變量。

84、使用StringBuffer的時(shí)候設(shè)置初始容量。

85、盡可能的使用局部變量進(jìn)行運(yùn)算。

86、盡可能少的使用 ‘!’操作符。(5級(jí))

87、盡可能的對(duì)接口進(jìn)行 instanceof 運(yùn)算。(5級(jí))

88、不要使用 Date[] 而要使用 long[] 替代。

89、不要顯式調(diào)用 finalize() 。

90、不要使用靜態(tài)集合,其內(nèi)存占用增長(zhǎng)沒(méi)有邊界。

91、不要重復(fù)調(diào)用一個(gè)方法獲取對(duì)象,使用局部變量重用對(duì)象。

92、線程同步中,使用 notifyAll() 代替 notify()。

93、避免在同步方法中調(diào)用另一個(gè)同步方法造成的死鎖。

94、非同步方法中不能調(diào)用 wait() , notify() 方法。

95、使用 wait(), notify() 代替 while(), sleep() 。

96、不要使用同步方法,使用同步塊。(5級(jí))

97、把所有的公有方法定義為同步方法。 (5級(jí))

98、實(shí)現(xiàn)的 Runnable.run() 方法必須是同步方法。 (5級(jí))

99、一個(gè)只有abstract方法、final static 屬性的類(lèi)應(yīng)該定義成接口。

100、在 clone() 方法中應(yīng)該而且必須使用 super.clone() 而不是 new 。

101、常量必須定義為 final 。

102、在 for 循環(huán)中提供終止條件。

103、在 for, while 循環(huán)中使用增量計(jì)數(shù)。

104、使用 StringTokenizer 代替 indexOf() 和 substring() 。

105、不要在構(gòu)建器中使用非 final 方法。

106、不要對(duì)參數(shù)進(jìn)行賦值操作。(5級(jí))

107、不要通過(guò)名字比較兩個(gè)對(duì)象的類(lèi),應(yīng)該使用 getClass() 。

108、安全:盡量不要使用內(nèi)部類(lèi)。

109、安全:盡量不要使類(lèi)可以克隆。

110、安全:盡量不要使接口可以序列化。

111、安全:盡量不要使用友好方法、屬性和類(lèi)。

112、Servlet:不要使用 java.beans.Beans.instantiate() 方法。

113、Servlet:不再使用HttpSession時(shí),應(yīng)該盡早使用 invalidate() 方法釋放 。

114、Servlet:不再使用JDBC資源時(shí),應(yīng)該盡早使用 close() 方法釋放 。

115、Servlet:不要使用Servlet的 SingleThreadModel,會(huì)消耗大量資源。

116、國(guó)際化:不要使用一個(gè)字符進(jìn)行邏輯操作,使用 Characater。

117、國(guó)際化:不要進(jìn)行字符串連接操作,使用MessageFormat 。

118、國(guó)際化:不要使用 Date.toString() ,Time.toString() 方法。

119、國(guó)際化:字符和字符串常量應(yīng)該放在資源文件中。

120、國(guó)際化:不要使用數(shù)字的 toString() 方法。

121、國(guó)際化:不要使用 StringBuffer , StringTokenizer類(lèi)。

122、國(guó)際化:不要使用 String 類(lèi)的 compareTo(), equals() 方法。

123、復(fù)雜度:建議的最大規(guī)模:

????繼承層次 5層

????類(lèi)的行數(shù) 1000行(包含{})

????類(lèi)的屬性 10個(gè)

????類(lèi)的方法 20個(gè)

????類(lèi)友好方法 10個(gè)

????類(lèi)私有方法 15個(gè)

????類(lèi)保護(hù)方法 10個(gè)

????類(lèi)公有方法 10個(gè)

????類(lèi)調(diào)用方法 20個(gè)

????方法參數(shù) 5個(gè)

????return語(yǔ)句 1個(gè)

????方法行數(shù) 30行

????方法代碼 20行

????注釋比率 30%~50%

以上,就是小編整理的如何成為一名合格java程序員的文檔,希望幫助到大家!

————————————————

版權(quán)聲明:本文為CSDN博主「程序yang」的原創(chuàng)文章,經(jīng)授權(quán)發(fā)布本平臺(tái)!


熱門(mén)班型時(shí)間
人工智能就業(yè)班 即將爆滿
AI應(yīng)用線上班 即將爆滿
UI設(shè)計(jì)全能班 即將爆滿
數(shù)據(jù)分析綜合班 即將爆滿
軟件開(kāi)發(fā)全能班 爆滿開(kāi)班
網(wǎng)絡(luò)安全運(yùn)營(yíng)班 爆滿開(kāi)班
報(bào)名優(yōu)惠
免費(fèi)試聽(tīng)
課程資料
官方微信
返回頂部
培訓(xùn)課程 熱門(mén)話題 站內(nèi)鏈接