Java開發編碼異常習慣處理

2021-08-10 02:34:24 字數 1683 閱讀 3421

1.錯誤的捕獲方式

在捕獲了異常之後什麼都不做,相當於忽略了這個異常。千萬不要使用空的catch塊,空的catch塊意味著你在程式中隱藏了錯誤和異常,並且很可能導致程式出現不可控的執行結果。如果你非常肯定捕獲到的異常不會以任何方式對程式造成影響,最好用log日誌將該異常進行記錄,以便日後方便更新和維護.

你的**中最好不要出現這類的異常**,真出現異常了,異常資訊列印根本不會出現在日誌檔案裡

這種異常列印也是很智障的,雖然最終異常資訊被列印了,但是卻沒有詳細的異常資訊記錄

2.正常的列印方法

3.當你想要想要在發生異常時,終止程式繼續執行下去,可以寫好的業務異常類繼承runtimeexception

public

class

busines***ception

extends

runtimeexception

public

busines***ception(string message)

public

busines***ception(string message, throwable cause)

public

busines***ception(throwable cause)

}

測試類:

import org.slf4j.logger;

import org.slf4j.logge***ctory;

public

class

testexception catch (exception e) finally

system.out.println("outside----------");}}

執行結果:

可以看出:system.out.println(「outside———-「);並沒有往下執行

4.業務異常處理類,正確捕獲異常

try  catch (bizexception e)  catch (exception ex) 

log.info(constants.reponse_msg, json.tojsonstring(response));

return response;

}

注意不要遺漏捕獲exception非執行期異常,這點很重要。有人在這裡可能會問,業務異常不是繼承了exception了嘛,為什麼不直接只捕獲乙個exception呢,其實這裡主要是作為乙個區分,專案中,我們可把控的基本都是業務異常,那種不可把控的自然是exception,我們也可以稱做系統異常,專案是不能預知它的出現的,所以統一歸為一類,並且code也唯

編碼習慣之異常處理

對於大型it系統,最怕的事情第一是系統出現了異常我不知道,等問題鬧大了使用者投訴了才知道出問題了。第二就是出了問題之後無法找到出錯原因。針對這2個問題,說說我們專案組是怎麼樣規定異常處理的。再次宣告我的觀點,我這系列貼裡面,沒有什麼技術點,都是一些程式設計的經驗之談,而且是建立在專案背景是大部分 都...

我的編碼習慣 異常處理

原文出處 曉風輕 程式設計師你為什麼這麼累?對於大型it系統,最怕的事情第一是系統出現了異常我不知道,等問題鬧大了使用者投訴了才知道出問題了。第二就是出了問題之後無法找到出錯原因。針對這2個問題,說說我們專案組是怎麼樣規定異常處理的。再次宣告我的觀點,我這系列貼裡面,沒有什麼技術點,都是一些程式設計...

java 編碼習慣整理

為了防止偶發性的nullpointerexception異常,我們通常將string放置在equals 函式的左邊來實現字串比較,如下 bad if variable.equals literal good if literal equals variable 這是隨便用腦子想想就可以做的事,從ba...