1. 程式人生 > >應該手動丟擲什麼異常?RuntimeException?

應該手動丟擲什麼異常?RuntimeException?

Java程式設計師應該手動丟擲什麼異常?不能丟擲RuntimeException吧? 

秦三行

Bbs1

結帖率 96.88%

 if(sectionCodeT!=null && !"".equals(sectionCodeT)){
boolean b = this.validateCodeBySectionType(s.getSectionType(),sectionCodeT);
if(b){ //編碼重複
throw new RuntimeException("編號已經存在");
}
 }else{
throw new NullPointerException("編號為空");
 }
上邊的程式碼是想在service層丟擲,然後在controller層用try catch接收到這個異常,但是總覺得丟擲這兩個異常不太好,又說不上來應該丟擲什麼異常,莫非要讓我自定義異常嗎

還有,作為程式設計師 手動丟擲 執行時異常好嗎??總覺得應該丟擲檢查異常,就是非執行時異常,那我應該丟擲什麼??

聰明的女人從不買面膜,睡前這樣做,皺紋全消顯年輕!廣告 遇見 · 燨燚

問題點數:40分

 0 2014-11-14 10:49:15

回覆數 11 只看樓主 引用 舉報 樓主

秦三行

Bbs1

 知道請回復謝謝各位

0 2014-11-14 11:06:47

只看TA 引用 舉報 #1    得分 0

手動使用throw丟擲異常/* 模擬註冊*/public class fuck9{ public static void main(String [] args){ //假如使用者提供的使用者名稱如下: String username="wwwwwwww"; //註冊 CustomerService cs=new CustomerService(); try { cs.register(use...

Defonds

Bbs9 版主

Blank Blank Blank

就拋自定義異常唄

0 2014-11-14 12:52:17

只看TA 引用 舉報 #2    得分 0

java 手動丟擲異常當然需要先用try catch捕獲,但注意new Exception("")括號裡的字串其實是異常原因,所以獲取是要用ex.getCause().getMessage() public void divide() throws Exception { int dylist = dyDao.findByHql("from ZcZcsqdy where y

littlebrain4s...

Bbs5

Blank

1、一般執行時異常屬於抽象異常;專案應該自定義大類執行時異常類來抽象表示問題所在;
2、檢查時異常一般都是把發生的問題具體化。

0 2014-11-14 13:10:51

只看TA 引用 舉報 #3    得分 0

JAVA執行時異常及常見的5中RuntimeExecption最近在抽時間看面試題,很多面試題都提出了寫出java常見的5個執行時異常。現在來總結一下, java執行時異常是可能在java虛擬機器正常工作時丟擲的異常。 java提供了兩種異常機制。一種是執行時異常(RuntimeExepction),一種是檢查式異常(checked execption)。 檢查式異常:我們經常遇到的IO異常及sql異常就屬於檢查式異常。對於這種異常,java編譯器要求我

秦三行

Bbs1

引用 3 樓 littlebrain4solving 的回覆:

1、一般執行時異常屬於抽象異常;專案應該自定義大類執行時異常類來抽象表示問題所在;
2、檢查時異常一般都是把發生的問題具體化。

我在本文程式碼塊中應該丟擲的是自定義 檢查異常吧,?而不是丟擲執行時異常?

0 2014-11-14 14:07:05

只看TA 引用 舉報 #4    得分 0

Java高階系列——何時使用、如何使用異常(Exceptions)一、介紹 在Java中,異常是一個非常重要的工具,在程式流中異常可以發出一些反常的(異常的)情況並阻止程式進行更深入的執行。自然地,異常情況可能是致命的(程式不能執行任何操作並且會終止),也可能是可恢復的(程式可以繼續執行,但是有些功能可能不可用)。 本文我們將會闡述一些使用異常的經典場景,討論Checked Exceptions和Unchecked Exceptions,並且接觸一些不太常見

littlebrain4s...

Bbs5

Blank

引用 4 樓 duanlexianer 的回覆:

Quote: 引用 3 樓 littlebrain4solving 的回覆:

1、一般執行時異常屬於抽象異常;專案應該自定義大類執行時異常類來抽象表示問題所在;
2、檢查時異常一般都是把發生的問題具體化。
我在本文程式碼塊中應該丟擲的是自定義 檢查異常吧,?而不是丟擲執行時異常?


這裡應該丟擲檢查異常。

專業為你發力,旺季來臨,人氣旺,掙錢足!廣告 揚州輕奢 · 燨燚

0 2014-11-14 14:56:49

只看TA 引用 舉報 #5    得分 10

Howhyou_

Bbs1

執行時異常不用沒必要丟擲吧

0 2014-11-14 15:12:49

只看TA 引用 舉報 #6    得分 30

【java知識點異常】throw new RuntimeException(e)與e.printStackTrace( )的區別轉載自:https://blog.csdn.net/xuzhuaaron1/article/details/73611404e.printStackTrace( )是列印異常棧資訊,而throw new RuntimeException(e)是把異常包在一個執行時異常中丟擲。我們常看見這種寫法try{....}catch(Exception e){e.printStackTrace( );thro...

mysteryboy2000

Bbs1

空手就想套白狼 想讓人給你做專案,還好意思發帖 你真搞笑。

0 2015-01-14 21:46:28

只看TA 引用 舉報 #7    得分 0

Java中常見的幾種RuntimeException總結了一下JAVA中常見的幾種RuntimeException,大約有如下幾種: NullPointerException - 空指標引用異常 ClassCastException - 型別強制轉換異常。 IllegalArgumentException - 傳遞非法引數異常。 ArithmeticException - 算術運算異常 ArrayStoreException - 向陣列中

wgxaszc8

Bbs1

回覆於: 2015-01-14 21:46:28
空手就想套白狼 想讓人給你做專案,還好意思發帖 你真搞笑。
你個sb,看什麼帖子呢,去死你媽逼裡做專案去,mb,請教個問題,不會就在這瞎nm BIBI

0 2016-11-17 17:32:23

只看TA 引用 舉報 #8    得分 0

java後臺程式碼丟擲的異常可以在頁面上顯示嗎?java後臺程式碼丟擲的異常可以在頁面上顯示嗎?有程式碼例子嗎?求大神指導

qq_16690419

Bbs1

Exception的子類,非RunTimeException的子類是必須要處理的;RunTimeException的子類是可處理可不處理的。。。。

0 2017-06-02 10:29:05

只看TA 引用 舉報 #9    得分 0

Java 如何丟擲異常、自定義異常一、異常的丟擲 1、定義 : 一個方法不處理這個異常,而是呼叫層次向上傳遞,誰呼叫這個方法,這個異常就由誰來處理。2、throw : 將產生的異常丟擲(強調的是動作),丟擲的既可以是異常的引用,也可以是異常物件。(位置: 方法體內)3、throws : 如果一個方法可能會出現異常,但沒有能力處理這種異常,可以在方法宣告處用throws子句來宣告丟擲異常。用它修飾的方法向呼叫者表明該方法可能會丟擲異

reupe

Bbs1

最好不要丟擲RuntimeException以及它的子類。
因為RumtimeException以及其子類比如NullPointerException,IndexOutOfBoundsExceptiond等等,這些所謂"checked"異常,程式設計師通過處理,是完全可以避免異常的,換句話說,這類異常出現,是因為你沒處理好程式碼。
而IOException這些"unChecked"異常很多情況下你是無法控制的,這類異常的發生是 你所不能預測的,這就需要丟擲,告訴方法呼叫者可能會發生這樣的異常

吸菸前巧用一物,當天排出“惡露”,健康到尖叫廣告 亞通 · 燨燚

0 2017-07-06 10:48:42

只看TA 引用 舉報 #10    得分 0

reupe

Bbs1

引用 10 樓 reupe 的回覆:

最好不要丟擲RuntimeException以及它的子類。
因為RumtimeException以及其子類比如NullPointerException,IndexOutOfBoundsExceptiond等等,這些所謂"checked"異常,程式設計師通過處理,是完全可以避免異常的,換句話說,這類異常出現,是因為你沒處理好程式碼。
而IOException這些"unChecked"異常很多情況下你是無法控制的,這類異常的發生是 你所不能預測的,這就需要丟擲,告訴方法呼叫者可能會發生這樣的異常



這裡面有個錯誤,RuntimeException是unchecked異常
IOException是checked異常

0 2017-07-06 10:57:16