Re: [問題] 關於例外檢查的問題

看板java作者 (swpoker)時間14年前 (2011/11/16 15:52), 編輯推噓0(000)
留言0則, 0人參與, 最新討論串4/4 (看更多)
例外是很耗效能的 使用例外的時機點是程式無法繼續下去+維持程式的架構 所以不用去捕捉例外就盡可能不要捕捉 因此在這裡的案例就是能夠判別null~就不要去捕捉nullpointexception 但是如果要取其一的話~當選架構 此外你要維持程式的精簡~可以參考設計樣式 (程式碼的好壞不在程式碼的多少) 程式的流程有個重點就是 if是萬惡的 switch更是可怕 goto是無間道阿 (我這裡是誇大了,但是參考重構 clean code 等書幾乎都會這樣說 XD ) 其他就請參考重構+設計樣式+敏捷3P (這幾本書建議必看) 基本上像這種需要擴充的判別 我大概會用strategy + template來設計一下 但是前提是要不簡單的需求或是比較動態的會擴充的 如果只有固定幾種判別 那就還是用if 就好了 (把if else移到新的方法裡面去) 提供參考一下 ※ 引述《swatches (松鼠)》之銘言: : 最近在寫java時,在選擇用exception和條件式判斷時 : 不太明白兩者使用的時機 : 如果是用條件式判斷: : String type = getPara(); : if( type != null && type.equals("haha") ) { : output += type; } : else { : output += "something wrong" } : 如果是用exception: : String type = getPara(); : try{ : if( type.equals("haha") ) { : output += type; } : } catch (java.lang.NullPointerException e){ : output += "something wrong" : } : 這兩者雖然只有針對null pointer這邊做舉例 : 可是其實我還是有遇到其他更複雜的狀況 : 個人的想法是 : 如果我用條件式判斷時,可以掌握所有的情況,但是比較複雜 : 如果我用例外處理時,程式碼相對簡潔,但是不能掌握所有的判斷情況(?) : 想問問各位有關這兩個做法的想法,如果有哪裡說錯了,還請大家幫忙糾正 : 謝謝 PS.{}雖然看起來很多餘,但是個好習慣 多寫個方法或是類別並不會造成效率的差異很大,但是對於程式的架構 卻有很好的影響 -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 163.29.28.131
文章代碼(AID): #1Emskcms (java)
文章代碼(AID): #1Emskcms (java)