




版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領(lǐng)
文檔簡介
經(jīng)典word整理文檔,僅參考,雙擊此處可刪除頁眉頁腳。本資料屬于網(wǎng)絡(luò)整理,如有侵權(quán),請聯(lián)系刪除,謝謝!Sonar常見問題解決方案原創(chuàng)2017年08月30日12:20:59阻斷1、Closethis"FileInputStream"ina"finally"clause.在finally中關(guān)閉FileInputStream,這個最為常見,主要是關(guān)閉方式不對,finally代碼塊中,應(yīng)該要對每個stream進行單獨關(guān)閉,而不能統(tǒng)一寫在一個try-catch代碼中,jdk7可以考慮try-resources方式關(guān)閉,代碼相對優(yōu)雅。另外數(shù)據(jù)庫操作的statement和resultRs沒有關(guān)閉的情況也非常多。這個也是要重點留意的地方。2、A"NullPointerException"couldbethrown;"tom"isnullablehere中,就會第一時間考慮到這類情況,并做相應(yīng)的處理。解決方式無它,先判斷或者先實例化,再訪問里面的屬性或者成員。嚴重1、Defineandthrowadedicatedexceptioninsteadofusingagenericone定義并拋出一個專用的異常來代替一個通用的異常。2、Removethishard-codedpassword移除代碼里硬編碼的密碼信息。會有少許的誤判的情況,一般是變量包含:PWD或者password,所以如果真的不是硬編碼,可以考慮更換變量名稱,比如PWD改PW等等。3、Eitherlogorrethrowthisexceptioncatch異常之后,使用log方式或者throw異常的方式解決。如果業(yè)務(wù)上真的沒有throw或者記錄日志的話,可以使用log.debug的方式填充來解決問題。4、MakethisIP""addressconfigurable將IP弄到配置文件中,不要硬編碼到代碼里。個人覺得改動稍大!5、Makethis"publicstaticJSAPI"fieldfinal如果你將這個變量設(shè)置為publicStatic慮將它設(shè)置為final別的值。所以如果是只是當(dāng)前類使用,可以考慮將公開訪問方式改為私有。6、Maketheenclosingmethod"static"orremovethisset見代碼:publicclassMyClass{privatestaticintcount=0;publicvoiddoSomething(){count++;//Noncompliant}實例和/或多個線程,則很容易導(dǎo)致錯誤。理想情況下,靜態(tài)字段僅從同步靜態(tài)方法中更新。7、Override"equals(Objectobj)"tocomplywiththecontractofthe"compareTo(To)"method如果重寫了compareTo方法,同時也應(yīng)重寫equals方法。8、Make"body"transientorserializable.publicclassAddress{privatestaticfinallongserialVersionUID=1905122041950251207L;如果person已經(jīng)序列化,其成員變量Address也進行序列化。不然轉(zhuǎn)化時會有問題。9Floatingpointnumbersshouldnotbetestedforequality浮點類型的數(shù)字,不要通過==或者!=方式其它類型比較,因為浮點是不精確的,所以在比較時,會進行類型升級升級原則如下:·如果運算符任意一方的類型為double,則另一方會轉(zhuǎn)換為double·否則,如果運算符任意一方的類型為float,則另一方會轉(zhuǎn)換為float·否則,如果運算符任意一方的類型為long,則另一方會轉(zhuǎn)換為long·否則,兩邊都會轉(zhuǎn)換為int以下的方式得到的結(jié)果都是false。floatmyNumber=3.146;if(myNumber==3.146f){//Noncompliant.Becauseoffloatingpointimprecision,thiswillbefalseif(myNumber!=3.146f){//Noncompliant.Becauseoffloatingpointimprecision,thiswillbetrueif(zeroFloat==0){//Noncompliant.Computationsmayendupwithavalueclosebutnotequaltozero.}所以,要比較浮點數(shù)是否相等,需要做的事情是:排除NaN和無窮在精度范圍內(nèi)進行比較正確的例子:if(Double.isNaN(a)||Double.isNaN(b)||Double.isInfinite(a)||Double.isInfinite(b)){}10、Thiscallto"contains()"maybeaperformancehotspotifthecollectionislarge.如果collectioncontains方法的時間復(fù)雜度是很高的。所以開發(fā)過程中要注意這一點。下面的是列表:·Concu
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 2025-2030年中國錦綸切片行業(yè)競爭格局規(guī)劃研究報告
- 2025-2030年中國銅礦采選行業(yè)發(fā)展狀況及營銷戰(zhàn)略研究報告
- 2025-2030年中國蜂窩紙板市場運營狀況及投資戰(zhàn)略研究報告
- 2025-2030年中國藥學(xué)教育發(fā)展模式及未來投資戰(zhàn)略分析報告
- 2025-2030年中國聚碳酸酯pc行業(yè)運行狀況規(guī)劃分析報告
- 2025-2030年中國粗雜糧行業(yè)競爭格局及發(fā)展前景分析報告
- 2025-2030年中國空氣污染治理設(shè)備市場經(jīng)營狀況及發(fā)展趨勢分析報告
- 2025-2030年中國碼垛機器人市場運行動態(tài)及發(fā)展前景分析報告
- 幼兒健康有營養(yǎng)的蔬菜教案(12篇)
- 中國傳媒大學(xué)《電子與電工技術(shù)》2023-2024學(xué)年第二學(xué)期期末試卷
- 北師大版二年級數(shù)學(xué)下冊全冊10套試卷(附答案)
- GB/T 2423.17-2024環(huán)境試驗第2部分:試驗方法試驗Ka:鹽霧
- 數(shù)字出版概論 課件 第六章 數(shù)字內(nèi)容加工、管理技術(shù)
- 糖尿病并發(fā)癥的早期篩查
- 2019年山東省職業(yè)院校技能大賽中職組“沙盤模擬企業(yè)經(jīng)營”賽項規(guī)程
- GB/T 32399-2024信息技術(shù)云計算參考架構(gòu)
- 初中體育與健康 初二 水平四(八年級)田徑大單元教學(xué)設(shè)計+快速跑教案
- 2024-2025學(xué)年華東師大版數(shù)學(xué)七年級上冊計算題專項訓(xùn)練
- 移動通信運營商倉庫安全管理制度
- DL∕T 5452-2012 變電工程初步設(shè)計內(nèi)容深度規(guī)定
評論
0/150
提交評論