自定義異常類怎么寫(xiě) java里什么時(shí)候需要自己定義異常類?使用自定義異常與系統(tǒng)異常有何差別?
java里什么時(shí)候需要自己定義異常類?使用自定義異常與系統(tǒng)異常有何差別?在java開(kāi)發(fā)中,最常見(jiàn)的自定義異常是(名稱不是唯一的,您可以自定義)businessexception extensions
java里什么時(shí)候需要自己定義異常類?使用自定義異常與系統(tǒng)異常有何差別?
在java開(kāi)發(fā)中,最常見(jiàn)的自定義異常是(名稱不是唯一的,您可以自定義)businessexception extensions runtimeException。這個(gè)異常稱為“業(yè)務(wù)異?!?。這個(gè)異常非常有用,主要用于場(chǎng)景中的事務(wù)回滾。在您的業(yè)務(wù)代碼邏輯中,因?yàn)橐欢未a已經(jīng)在持久層上操作了很多次,但是當(dāng)您繼續(xù)往下走時(shí),您會(huì)發(fā)現(xiàn)某個(gè)條件不滿足,業(yè)務(wù)邏輯代碼就不允許再執(zhí)行了。此時(shí),需要返回錯(cuò)誤代碼,不能回滾已經(jīng)執(zhí)行了持久層操作的東西
!,怎么辦?此時(shí),使用mybusinessexception拋出異常,并返回異常中的錯(cuò)誤代碼。它可以實(shí)現(xiàn)業(yè)務(wù)回滾和錯(cuò)誤代碼返回。一石二鳥(niǎo)!多美??!R這個(gè)技巧應(yīng)該是平時(shí)開(kāi)發(fā)框架中經(jīng)常遇到的,房東應(yīng)該多注意總結(jié)!事實(shí)上,這種方法在很多框架中都使用過(guò)
1。Rethrow
自定義異常用于更好地隔離異常,識(shí)別異常類型、ID、自定義消息和日志
2。對(duì)第三方庫(kù)的異常進(jìn)行打包和抽象,以保持與框架異常定義的一致性,方便框架處理不同的異常
3。Restful API,統(tǒng)一異常管理