日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

软件构造学习笔记-第十二周

發布時間:2023/12/4 编程问答 26 豆豆
生活随笔 收集整理的這篇文章主要介紹了 软件构造学习笔记-第十二周 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

本周介紹了異常以及異常的處理。Java的異常機制將處理異常的代碼整合到一個代碼塊中,而不是通過if-else進行處理,提高了代碼整體的簡潔性。同時,異常機制可以更加詳細地說明錯誤類型、引起錯誤的位置、錯誤信息,對程序健壯性十分有幫助。

異常

1.Java“異常”的分類

分為Error和Exception(又分為RuntimeException和其它Exception),其中虛線部分(unchecked exception)不需顯式catch。
2.運行時異常由程序員在代碼中處理不當造成,其它異常由外部原因造成。
3.運行時異常不應該catch,而是通過修改代碼消除。其它異常需要catch,如果不捕獲則編譯無法通過,類似于靜態類型檢查。
4.異常是為了增強程序健壯性;斷言為了增強程序正確性。

處理異常(針對checked exception)

1.當要決定采用checked exception還是unchecked exception時,看異常由誰引起的。如果客戶端代碼不能做任何補救措施,則采用uncheck exception;如果客戶端可以根據異常信息補救,則采用checked exception。
2.客戶端應該從checked exception中獲取有價值的信息,利用異常返回的信息明確操作失敗的原因。
3.checked exception是可預料但無法預防的。如果做不到這一點則使用unchecked exception。
4.兩種異常的對比

5.方法應該throws的異常種類:該方法調用的其它方法拋出了一個checked exception(從別處傳來的異常);當前方法檢測到錯誤并使用throw拋出一個checked exception(本身造成的異常)
6.捕獲異常時,按照從具體到寬泛的順序編寫catch塊
7.可以在catch塊中繼續拋出異常(為了細化異常種類),但是需要保留根異常

LSP原則下的異常

核心是子類型可以替代父類型,即聲明父類型,賦值子類型
1.如果子類型重寫了父類型的方法,那么子類型方法拋出的異常不能比父類型拋出異常的類型更寬泛。
2.子類型方法可以拋出更具體的異常,也可以不拋出異常。
3.如果父類型的方法未拋出異常,子類型方法也不能拋出異常。可以理解成未拋出異常是最具體的異常。

總結

以上是生活随笔為你收集整理的软件构造学习笔记-第十二周的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。