從一開始寫Java程式
還不了解Exception精隨之前
我對於Exception的處理只有try-cache
cache之後就不做任何事了....
只是一種不想讓程式出錯的鴕鳥心態
後來國華跟我說了一些Exception的應用之後
我開始大量運用Exception來建立一堆不屬於正常流程下的例外事件
在過去,一個回傳bool的mehtod,成功完成就丟true,失敗就丟false
但是失敗有可能是很多原因造的,可能是傳入的參數本來就有問題,或是做到一半出錯
這時候客戶會要求是否能夠顯示失敗原因,不然都不知道怎麼改了!!
當時愚蠢的我,自以為聰明的把回傳的bool改成其他物件像這樣
public class Result{
public bool IsSuccess {get; set}
public string ErrorMessage {get; set}
}
如此一來就有ErrorMessage可以顯示了!!真是好棒棒阿我
然後就開始改程式。。。。。
如果我早一點認識Exception的話。。。。。
前面的文章有提到,使用Exception可以增加程式的可讀性
Exception可以告訴我們程式執行的過程中發生了什麼事
最常遇到的就是NullPointException,沒有物件
IndexOutOfRangeException告訴你陣列長度沒有你想要的那麼長
前面也說了,傳入參數如果不符合預期的
請適當的丟出ArgumentNullException or ArgumentOutOfRangeException
究竟~Exception要怎麼使用才能讓工程師使用者們知道現在到底發生什麼事?
要丟出去還是要在這裡就接收處理呢???
下回開始,由Exception挑大樑主演的極短篇5集偶像劇
同一時間敬請期待~