




已閱讀5頁,還剩9頁未讀, 繼續(xù)免費(fèi)閱讀
版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡介
1. 程序塊采用縮進(jìn)風(fēng)格,空格為4個(gè).說明:對于開發(fā)工具自動(dòng)生成的代碼可以不一致2. 分界符(如大括號和)應(yīng)各自占一行并且在同一列,同時(shí)與引用它們的語句左對齊,在方法的開始,類和接口的定義,以及if,for,do,while,switch,case語句都要采用上述縮進(jìn)說明:for()/your code3. 較長(80字符)的語句,表達(dá)式和參數(shù)要分多行,長表達(dá)式要在低優(yōu)先級操作符劃分新行,操作符放在行首,新行要適當(dāng)縮進(jìn),整齊,語句可讀.說明:if(filename != null& new File(logPath+filename).length() logConfig.getFileSize() /your code4. 一行只寫一條語句說明:LogFilename wow = null;LogFilename that = null;5. if,for,do,switch,while,case,default各占一行,它們的執(zhí)行語句無論多少都要加說明:if(writeToFile) writeFileTerrupt();6. 相對獨(dú)立的程序塊,變量,說明要加空行說明:if(log.getLevel() log.getRecord() return ;/空行LogWrite writer;7. 對齊只用空格鍵,不用TAB鍵說明:以免使用不同的編輯器閱讀程序時(shí),因TAB鍵所設(shè)置的空格數(shù)不同而造成程序布局不整齊,JBuildr,UltraEdit等編輯環(huán)境,支持行首TAB替換成空格,應(yīng)將該選項(xiàng)打開8. 兩個(gè)以上的關(guān)鍵字,變量,常量進(jìn)行對等操作時(shí),操作符之前,之后或前后要加空格,進(jìn)行非對等操作時(shí),如果是關(guān)系密切的立即操作符,后面不加空格(如.操作符)說明:采用這種松散方式編寫代碼目的是讓程序更加清晰,由于空格所產(chǎn)生的清晰性是相對的,所以在已經(jīng)很清晰的語句中沒有必要留空格,如果語句已足夠清晰,則括號內(nèi)側(cè)(即左括號后面和右括號前面)不需要加空格,多重括號間不必加空格,因?yàn)閖ava中括號已經(jīng)是很清晰的標(biāo)志了.在長句中,如果需要加的空格非常多,那么應(yīng)該保持整體清晰,而在局部中不加空格,給操作符留空格時(shí)不要連續(xù)留兩個(gè)以上空格9. 類屬性和方法不要交叉放置,不同存取范圍的屬性和方法也不要交叉放置說明:類定義: 類公有屬性定義; 類保護(hù)屬性定義; 類私有屬性定義; 類公有方法定義; 類保護(hù)方法定義; 類私有方法定義;10. 源程序的有效注釋量必須在30%以上11. 包的注釋寫入一個(gè)名為package.html的html格式的說明文件放入當(dāng)前路徑12. 包的注釋內(nèi)容:本包作用,詳細(xì)描述本包內(nèi)容,產(chǎn)品模塊名稱及版本,公司版本說明: 一句話描述 詳細(xì)描述 產(chǎn)品模塊 公司版本信息 13. 文件注釋:寫入文件頭部,包名之前 14. 文件注釋內(nèi)容:版本說明,描述信息,修改歷史,生成日期說明: /* *文件名 *版權(quán) *描述 *修改人 *修改時(shí)間 *修改內(nèi)容 *跟蹤單號 *修改單號 */15. 類和接口注釋:放在package注釋之后,class或interface之前16. 類和接口注釋內(nèi)容:類的注釋要一句話功能描述,功能詳細(xì)描述說明:/* * * *author *version *see 相關(guān)類/方法 *since 產(chǎn)品/模塊版本 *deprecated (表示不建議使用該類或者接口)17. 類屬性,公有和保護(hù)方法注釋:寫在類屬性,公有和保護(hù)方法上面18. 成員變量注釋內(nèi)容:成員變量的意義,目的,功能,可能被用到的地方19. 公有和保護(hù)方法注釋的內(nèi)容:方法的一句話功能描述,功能詳細(xì)描述,輸入?yún)?shù),輸出參數(shù),返回值,違例說明:/* *param *return *exception /throws */20. 對于方法內(nèi)部用throw拋出的異常,要在方法的注釋中標(biāo)明,對于調(diào)用其他方法拋出的異常,選主要的在注釋中說明,對于非RuntimeException,即throws子句聲明會(huì)拋出的異常,必須在方法的注釋中標(biāo)明21. 注釋應(yīng)與描述的代碼相近,對代碼的注釋應(yīng)放在代碼上方或者右方(單行注釋)相鄰位置,不可放在下面,如放于上方則與上面代碼用空行隔開22. 注釋與描述的內(nèi)容進(jìn)行同樣的縮進(jìn)23. 對變量的定義和分支語句,必須加以注釋24. 對于switch下的case語句,如果處理完一個(gè)case要進(jìn)入下一個(gè)case,必須在該case處理完,下一個(gè)case前加上明確的注釋說明:這樣比較清楚程序編寫者的意圖,有效防止無故遺漏break語句25. 邊寫代碼邊寫注釋,修改代碼同時(shí)修改注釋保證代碼和注釋一致,沒用的注釋要?jiǎng)h除26. 注釋內(nèi)容要清楚,明了,含義明確,防止二義性27. 不要在注釋中用縮寫說明:除非必要,在使用縮寫時(shí)或之前,應(yīng)對縮寫進(jìn)行必要的說明28. 不要在一行代碼或表達(dá)式中間加注釋說明:除非必要,不應(yīng)在代碼或表達(dá)式中間插入注釋,否則容易使代碼可理解性變差。29. 通過對函數(shù),過程,變量,結(jié)構(gòu)的正確命名,以及合理的組織代碼,使代碼成為自注釋的30. 在代碼的功能,意圖層次上進(jìn)行注釋,提供有用的,額外的信息示例.如下注釋意義不大。 /如果receiveFlag為真。 If(receiveFlag)而如下的注釋則給出了額外有用的信息。/如果從連結(jié)收到信息If(receiveFlag)31. 在代碼結(jié)束行的右方加注釋,以表明程序塊的結(jié)束說明:當(dāng)代碼段較長,特別是多重嵌套時(shí),這樣做可以使代碼更清晰,更便于閱讀。示例:參見如下例子。 If() program code1 while(indexMAX_INDEX) program code2 / /end of while(indexMAX_INDEX)/ /指明該條while語句結(jié)束。 / /end of If() / /指明是哪條if語句結(jié)束。32. 注釋考慮程序的易讀和外觀的排版,使用的語句若是中,英文都有,建議多使用中文,除非能用非常流利,準(zhǔn)確的英文33. 方法內(nèi)的單行注釋用/說明:調(diào)試程序的時(shí)候可以方便的使用/*/注釋掉一長段程序。34. 注釋用中文注釋和中文標(biāo)點(diǎn),方法和類的描述第一句話使用簡潔明了的話概括功能,然后加句號.接下來的部分可以詳細(xì)描述說明:JavaDoc工具收集簡介的時(shí)候使用選取第一句話。35. 順序?qū)崿F(xiàn)流程的說明使用1,2,3,4.在每個(gè)實(shí)現(xiàn)步驟的代碼前進(jìn)行注釋示例:如下是對設(shè)置屬性的流程注釋。 /1.判斷輸入?yún)?shù)是否有效。 /2.設(shè)置本地變量 36. 一些復(fù)雜的代碼要說明示例:這里主要是對閏年算法的說明。 /1.如果能被4整除,是閏年; /2.如果能被100整除,不是閏年; /3.如果能被400整除,是閏年;37. 包名采用域后綴倒置加上自定義包名,用小寫字母,在部門內(nèi)部要規(guī)劃好包名的范圍,防止沖突,部門內(nèi)部產(chǎn)品使用部門的名稱加上模塊名稱,產(chǎn)品線的產(chǎn)品使用產(chǎn)品的名稱加上模塊名稱格式: com.huawei.產(chǎn)品名.模塊名稱 com.huawei.部門名稱.項(xiàng)目名稱示例: 融合WEBSMAP包名 com.huawei.iin.websmap 通用消息轉(zhuǎn)發(fā)包名 com.huawei.insa2.msgtrans38. 類名和接口使用完整意義的英文描述,英文首字母大寫,其他使用小寫和大寫的混合示例:OrderInformation,CustomerList,LogManager,LogConfig,SmpTransation39. 方法名使用完整意義的英文描述,首字母小寫,剩余字母首字母大寫,其他字母小寫示例: private void calculateRate(); public void addNewOrder();40. 方法中存取屬性的方法用setter方法和getter方法,動(dòng)作方法采用動(dòng)詞和動(dòng)賓結(jié)構(gòu)格式: get+非布爾屬性名() set+ 屬性名() is+布爾屬性名()動(dòng)詞()動(dòng)詞+賓語()示例:public String getType(); public boolean isFinished(); public void setVisible(boolean); public void addKeyListener(Listener);41. 屬性名使用完整意義的英文描述,第一個(gè)單詞字母小寫,剩余單詞首字母大寫,其余字母小寫,屬性名不能和方法名相同示例: private customerName; private orderNumber; private smpSession;42. 常量名使用全大寫英文,英文單詞之間用下劃線隔開,并使用final static修飾示例:public final static int MAX_VALUE=1000; public final static String DEFAULT_START_DATE=“2008-11-06”;43. 屬性名可以和公有方法參數(shù)相同,不能和局部變量相同,引用非靜態(tài)成員變量時(shí)用this,引用靜態(tài)成員變量時(shí)用類名示例:public class Personprivate String name;private static List properties;public void setName(String name) =name;public void setProperties (List properties) Person. Properties= properties;44. 常用組件的命名以組件名加上組件類型名結(jié)尾示例:Application類型的,命名以App結(jié)尾-MainApp; Frame類型的,建議命名以Frame結(jié)尾-TopoFrame;Panel類型的,建議命名以Panel結(jié)尾CreateCircuitPanel;Bean類型的,建議命名以Bean結(jié)尾-DataAccessBean;EJB類型的,建議命名以EJB結(jié)尾-DBProxyEJB;Applet類型的,建議命名以Applet結(jié)尾-PictureShowApplet;45. 函數(shù)名超過15個(gè)字母可采用去掉元音字母的方法或行業(yè)內(nèi)約定俗成的縮寫方式縮寫函數(shù)名示例:getCustomerInformation()改為getCustomerInfo()46. 準(zhǔn)確的確定成員函數(shù)的存取控制符,不是必須使用public的請用protected,不是必須用protected的請用private示例:protected void setUserName() private void calculateRate()47. 含有集合意義的屬性命名,盡量包含復(fù)數(shù)的意義示例:customes;orderItems48. 明確方法功能,精確實(shí)現(xiàn)方法設(shè)計(jì),一個(gè)函數(shù)完成一個(gè)功能,簡單的功能也要編寫方法實(shí)現(xiàn)說明:雖然為僅用一兩行就可以完成的功能去編寫方法好像沒有必要,但用方法可使功能明確化,增加程序可讀性,亦可方便維護(hù)、測試。49. 明確規(guī)定對接口方法參數(shù)的合法性檢查應(yīng)由方法的調(diào)用者負(fù)責(zé)還是有接口方法本身負(fù)責(zé),缺省由方法調(diào)用者負(fù)責(zé)說明:對于模塊間接口方法參數(shù)的合法性檢查這一問題,往往有兩個(gè)極端現(xiàn)象,即:要么是調(diào)用者和被調(diào)用者對參數(shù)均不作合法性檢查,結(jié)果就遺漏了合法性檢查這一必要的處理過程,造成問題隱患,要么就是調(diào)用者和被調(diào)用者均對參數(shù)進(jìn)行合法性檢查,這種情況雖不會(huì)造成問題,但產(chǎn)生了冗余代碼,降低了效率。50. 明確類的功能,精確實(shí)現(xiàn)類的設(shè)計(jì),一個(gè)類僅實(shí)現(xiàn)一組相近功能說明:劃分類的時(shí)候,應(yīng)該盡量把邏輯處理、數(shù)據(jù)和顯示分離。實(shí)現(xiàn)類功能的單一性。示例:數(shù)據(jù)類不能包含數(shù)組處理的邏輯 通信類不能包含顯示處理的邏輯51. 所有的數(shù)據(jù)類必須重載toString()方法,返回該類有意義的內(nèi)容說明:父類如果實(shí)現(xiàn)了比較合理的toString(),子類可以繼承不必再重寫。示例: public TopoNode private String nodeName; public String toString() Return“NodeName:”+nodeName; 52. 數(shù)據(jù)庫操作,IO操作要使用close()的對象要在try-catch-finally的finally中close()示例:try /Catch(IOException ioe) /finally try out.close();catch(IOException ioe) /53. 異常捕獲后如果不對異常進(jìn)行處理,則應(yīng)記錄日志或ex.printStackTrace()54. 自己寫的異常要寫詳細(xì)的描述信息55. 運(yùn)行期異常使用RuntimeException的子類來表示,不用在可能拋出異常的方法聲明上加上throws子句,非運(yùn)行期異常是從Excetion繼承而來,必須在方法聲明上加throws子句56. 在程序中使用異常處理還是使用錯(cuò)誤返回碼處理,根據(jù)是否有利于程序結(jié)構(gòu)來確定,并且異常和錯(cuò)誤碼不應(yīng)該混合使用,推薦使用異常57. 注意運(yùn)算符的優(yōu)先級,用括號明確表達(dá)式的操作順序,避免使用默認(rèn)優(yōu)先級58. 避免使用不易理解的數(shù)字,用有意義的標(biāo)識來代替,涉及物理狀態(tài)或者含有物理意義的常量,不應(yīng)直接使用數(shù)字,用有意義的靜態(tài)變量來代替59. 數(shù)組聲明使用int index,不用int index60. 代碼調(diào)試時(shí)不用system.out和system.err進(jìn)行打印,應(yīng)使用一個(gè)包含統(tǒng)一開關(guān)的測試類進(jìn)行統(tǒng)一打印61. 用調(diào)試開關(guān)來切換軟件的DEBUG版本和正式版,而不要同時(shí)存在正式版和DEBUG版的不同源文件,減少維護(hù)難度62. 記錄異常不要保存exception.getmessage(),而要記錄exception.toString() NullPointException拋出時(shí)常常描述為空.往往看不出出了什么錯(cuò).63. 一個(gè)方法不應(yīng)拋出太多類型的異常64. 異常捕獲盡量不要直接catch(Exception ex),要把異常細(xì)分處理65. 如果多段代碼重復(fù)做同一件事情,那么在方法劃分上可能存在問題66. 對于創(chuàng)建的主要的類,最好置入main()方法,包含用于測試那個(gè)類的代碼67. 集合中的數(shù)據(jù)如果不使用應(yīng)及時(shí)釋放,尤其是可重復(fù)使用的集合68. 源程序中關(guān)系緊密的代碼應(yīng)盡可能相鄰69. 不要使用難懂的技巧很高的語句,除非很有必要70. 在switch中每個(gè)case后面要加上return或者break71. 在運(yùn)算中不要減少數(shù)據(jù)精度72. switch中的case要和后面的常量保持一個(gè)空格,switch語句中不要定義case之外的無用標(biāo)簽73. 不要在if中使用等號=進(jìn)行賦值74. 靜態(tài)成員或方法使用類名訪問,不使用句柄訪問75. 方法重載時(shí),方法名一定要相同,避免類中使用兩個(gè)相似的方法名76. 包的注釋內(nèi)容要求: 簡述本包的作用 詳細(xì)描述本包的內(nèi)容,產(chǎn)品模塊名稱和版本,公司版權(quán)77. 不要在Componentlisttener,componentResied()方法中調(diào)用serResize()方法.78. 不要覆蓋父類的靜態(tài)方法和私有方法79. 不要覆蓋父類的屬性80. 不要使用二級以上的內(nèi)部類81. 把內(nèi)部類定義成私有類82. 去掉接口中多余的定義(不使用public ,abstaract, static,final等這是接口默認(rèn)的 )83. 不要定義不會(huì)被用到得局部變量 ,類私有屬性和私有方法和方法參數(shù)84. 顯示初始化所有的靜態(tài)屬性85. 不要使用System,getenv()方法86. 不要硬編碼 n r 作為換行符87. 不要直接使用 java.awt.peer.* 里面的接口88. 使用system.arrrycopy(), 不使用循環(huán)來復(fù)制數(shù)組89. 避免不必要的instanceof 比較運(yùn)算和類造型運(yùn)算90. 不要在finalize()方法中刪除監(jiān)聽器(listeners)91. 在finalize()方法中的finally中調(diào)用super.finalize()方法92. 在finalize()方法中調(diào)一定調(diào)用super.finalize()方法93. 進(jìn)行字符轉(zhuǎn)換的時(shí)候應(yīng)該盡可能的較少臨時(shí)變量94. 使用ObjectStream的方法后,調(diào)用reset()釋放對象95. 線程同步中,在循環(huán)里面使用條件測試(使用while(isWait)wait()代替If(iswait)wait)96. 不調(diào)用Thread類的resume(),suspend(),stop()方法97. 減小單個(gè)方法的復(fù)雜度使用的if,while,for,switch語句要在10個(gè)以內(nèi)98. 在servelts中重用jdbc連接數(shù)據(jù)源99. 減少在servle中使用的同步方法100. 不定義在包中沒有被用到的友好的屬性,方法和類101. 沒有子類的友好類應(yīng)該定義為final方法定義為final102. 數(shù)據(jù)庫操作,IO操作等需要使用結(jié)束close()的對象必須try-catch-catch-finally的finally中close().103. 為switch語句提供一個(gè)default選項(xiàng)104. 不要在for循環(huán)體中對計(jì)數(shù)器賦值105. 不要給非公有類定義public構(gòu)造器106. 不要對浮點(diǎn)數(shù)進(jìn)行比較運(yùn)算 如= != 減少運(yùn)算107. 實(shí)現(xiàn)equals() 方法時(shí)先用getClass()或者instanceof進(jìn)行類型比較通過后才能繼續(xù)比較108. 不要重載main()方法用作除入口以外的其它用途109. 方法的參數(shù)后不要和類中的方法名相同110. 除了構(gòu)建器外,不要使用和類名相同的方法名111. 不要定義Error和RuntimeException的子類,可以定義Exception的子類112. 線程中需要實(shí)現(xiàn)run()方法113. 使用equals()比較兩個(gè)類的值是否相同114. 字符串和數(shù)字運(yùn)算結(jié)果連接的時(shí)候,應(yīng)該是把數(shù)字運(yùn)算部分用小括號括起來115. 類中不要使用非私有(公有,保護(hù),友好)的非靜態(tài)屬性116. 在類中對于沒有實(shí)現(xiàn)的接口應(yīng)該定義成抽象方法,類應(yīng)該定義成抽象類117. 不要顯示導(dǎo)入java.lang.*包118. 初始化時(shí)不要使用類的非靜態(tài)屬性119. 顯示初始化時(shí)所有的局部變量,120. 按照方法名把方法排序放置,同名和同類型的方法應(yīng)該放在一起121. 不要在抽象類的構(gòu)造器中調(diào)用抽象方法122. 重載equals()方法時(shí)應(yīng)該重載hashcode()方法123. 工具類不要定義構(gòu)造器包括私有構(gòu)造器124. 不要在switch中使用10個(gè)以上的case語句125. 把main()方法放在類的最后126. 生命方法違例的時(shí)候不要使用Exception應(yīng)該使用它的子類127. 不要直接扔出一個(gè)error 應(yīng)該扔出它的子類128. 在進(jìn)行比較的時(shí)候,總是把常量放在同一邊129. 在可能的情況下,總是為類定義一個(gè)缺省的構(gòu)造器130. 在捕捉異常的時(shí)候不使用Exception , RuntimException, Throwable 最好用它子類131. 在接口和工具類中定義常量,132. 使用大寫”L”表示long常量133. 方法需要同樣數(shù)量參數(shù)的注釋用param134. 不要在注釋中使用不支持的標(biāo)示unsupported135. 不要使用Runtime,exec()方法136. 不要使用自定義本地方法137. 使用集合時(shí)初始化容量138. 不要在循環(huán)體內(nèi)調(diào)用同步方法和使用復(fù)雜的表達(dá)式139. 不要在循環(huán)體內(nèi)定義變量,140. 使用StringBuffer時(shí)初始化容量141. 少用! 142. 盡可能對接口進(jìn)行instanceof運(yùn)算143. 不要顯示調(diào)用finalize()144. 不要使用靜態(tài)集合 其內(nèi)存占用增長沒有界限145. 不要重復(fù)調(diào)用一個(gè)方法獲取對象,使用局部變量重用對象146. 線程中用notifyAll() 代替notify();147. 避免在同步方法中調(diào)用另一個(gè)同步方法造成的死鎖,148. 非同步方法中不能調(diào)用wait() notify()方法149. 不要使用同步方法,使用同步塊150. 用wait() notify() 代替while() sleep(),151. 把所有的公有方法定義為同步方法152. 實(shí)現(xiàn)Runable,run() 方法必須是同步方法153. 在clone()方法中應(yīng)該而且必須使用super.clone() 而不是new154. 使用StringTokenizer代替indexof() 和substrin()155. 不要對參數(shù)進(jìn)行賦值156. 不要使用String類的compareTo() equals()方法157. 不要使用servler的SingletThreadModel 會(huì)消耗大量資源158. 在Switch中每個(gè)Case語句都應(yīng)該包含break或者return。159. 不要使用空的for, if,,while語句。160. 在運(yùn)算中不要減小數(shù)據(jù)的精度。161. Switch語句中的Case關(guān)鍵字要和后面的常量保持一個(gè)空格,Switch語句中不要定義Case之外的無用標(biāo)簽。162. 不要在if語句中使用等號=進(jìn)行賦值操作。163. 靜態(tài)成員或者方法使用類名訪問,不使用句柄訪問。164. 方法重載的時(shí)候,一定要注意方法名相同,避免類中使用兩個(gè)非常相似的方法名。165. 不要在ComponentListener,ComponentResized()方法中調(diào)用serResize()方法。166. 不要覆蓋父類的靜態(tài)方法和私有方法。167. 不要覆蓋父類的屬性。168. 不要使用兩級以上的內(nèi)部類。169. 把內(nèi)部類定義成私有類。170. 去掉接口中多余的定義(不使用public,abstrac,static,final等,這是接口中默認(rèn)的)。171. 不要定義不會(huì)被用到的局部變量,類私有屬性,類私有方法和方法參數(shù)。172. 顯式寢化所有的靜態(tài)屬性。173. 不要使用System getenr()方法。174. 不要硬編碼n和r作為換行符號。175. 不要直接使用java.awt.peer.*里面的接口。176. 使用System .arraycopy(),不要使用循環(huán)來復(fù)制數(shù)組。177. 避免不必要的instenceof比較運(yùn)算和類造型運(yùn)算。178. 不要在finalize()方法中刪除臨聽器(listeners)。179. 在finalize()方法中一定要調(diào)用super finalize()方法。180. 在finalize()方法中的finally中調(diào)用super finalize()方法。181. 進(jìn)行字符轉(zhuǎn)換的時(shí)候應(yīng)該盡可能的較少用臨時(shí)變量。182. 使用Object stream的方法后,調(diào)用reset()釋放對象。183. 線程同步中,在循環(huán)里面使用條件測試(使用while(isWait) Wait()代替if(isWait) Wait())。184. 不使用Thread類的resume(),suspend(),stop()方法。185. 減小單個(gè)方法的復(fù)雜性度,使用的if,while,for,switch語句要在10個(gè)以內(nèi)。186. 在Servlet中,重用JDBC連接的數(shù)據(jù)源。187. 減少在Servlets中使用的同步方法。188. 不定義在包中沒有被用到的友好屬性,方法和類。189. 沒有子類的友好類應(yīng)該定義成final。190. 沒有被覆蓋的友好方法應(yīng)該定義成final。191. 為Switch語句提供一個(gè)default選項(xiàng)。192. 不要在for循環(huán)體中對計(jì)數(shù)器的賦值。193. 不要給非公有類定義public構(gòu)建器。194. 不要對浮點(diǎn)數(shù)進(jìn)行比較運(yùn)算,尤其是不要進(jìn)行=,!=運(yùn)算,減少,。234. 一個(gè)字符的連接使用而不使用“”,如:String a=b+c。235. 不要在循環(huán)體內(nèi)調(diào)用同步方法和使用try-catch塊。236. 不要使用不必要的布爾值比較,如:if(a equals(b),而不是if(a equals(b)=true)。237. 常量字符串使用String,非常量字符串使用StringBuffer。238. 在循環(huán)條件判斷的時(shí)候不要使用復(fù)雜的表達(dá)式。239. 對于”if(condition)do1;else do2;”語句使用條件操作符“if(condition)?do1:do2”。240. 不要在循環(huán)體內(nèi)定義變量。241. 使用StringBuffer的時(shí)候設(shè)置初始容量。242. 盡可能的使用局部變量進(jìn)行運(yùn)算。243. 盡可能少的使用“!”操作符。244. 盡可能的對接口進(jìn)行instanceof運(yùn)算。245. 不要使用Date,而要使用long替代。246. 不要顯式調(diào)用finalize()。247. 不要使用靜態(tài)集合,其內(nèi)存占用增長沒有邊界。248. 不要重復(fù)調(diào)用一個(gè)方法獲取對象,使用局部變量重用對象。249. 線程同步中,使用notifyAll()代替notify()250. 避免在同步方法中不能調(diào)用另一個(gè)同步方法造
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 模糊神經(jīng)網(wǎng)絡(luò)在船舶狀態(tài)智能監(jiān)測中的應(yīng)用研究
- 景區(qū)行政執(zhí)法管理辦法
- 核酸混合試劑管理辦法
- 電力大數(shù)據(jù)助力金融智能化風(fēng)控
- 供熱設(shè)備檢修管理辦法
- 公共衛(wèi)生中心管理辦法
- 物流行業(yè)的集聚效應(yīng)、技術(shù)創(chuàng)新與高質(zhì)量發(fā)展路徑
- 培訓(xùn)機(jī)構(gòu)審批管理辦法
- 普貨運(yùn)輸安全生產(chǎn)管理制度
- 教師培訓(xùn)方案:有效處理幼兒告狀行為的策略探討
- 中醫(yī)執(zhí)業(yè)醫(yī)師歷年真題及解答
- MT/T 1222-2024液壓支架再制造工程設(shè)計(jì)指南
- 2025年7月浙江省普通高中學(xué)業(yè)水平考試歷史仿真模擬卷01(含答案)
- 2024-2025學(xué)年人教版PEP六年級下學(xué)期期末試卷(含答案含聽力原文無音頻)
- 2025-2030年中國聚脲涂料行業(yè)市場現(xiàn)狀供需分析及投資評估規(guī)劃分析研究報(bào)告
- 一級建造師考試安全管理試題及答案
- 鍍鋅板知識課件
- 2025-2030偏光成像相機(jī)行業(yè)市場現(xiàn)狀供需分析及重點(diǎn)企業(yè)投資評估規(guī)劃分析研究報(bào)告
- 豬場退股協(xié)議書范本
- 2025海南保亭農(nóng)水投資有限公司招聘22人筆試參考題庫附帶答案詳解
- 靜密封管理制度
評論
0/150
提交評論