天天看點

Java 為什麼要 try catch?

一、描述

一個學在Java的室友問我,明明都知道錯誤為什麼還要try catch 處理異常啊?以下文章是我對其的一點思考。

二、為什麼要try catch?

明白Java 中的 try catch是什麼?

首先,try catch是Java中處理 <code>異常</code> 的手段機制。關于Java如何具體來處理異常,後面來解釋;我們先來明确目标和背景。既然是用來處理異常的,那麼異常是什麼?而這樣做的好處又是什麼呢?

異常指的是在程式運作過程中發生的異常事件,通常是由外部問題(如硬體錯誤、輸入錯誤)

所導緻的。在Java等面向對象的程式設計語言中異常屬于對象。

OS中:異常屬于内中斷(發生在處理器内部)

異常産生的原因?

從輸入的正确性角度考慮,我們都知道程式是一系列的指令序列,說白了也就是人們解決問題的一種邏輯,而作為人思考的邏輯不可能做到百分百的不出錯(比如産生 死循環導緻記憶體不夠用,或者 計算出現 除數為0等情況)。另外,從實體實作機制角度出發,最終實作我們的想法(指令流)是CPU以及輔助存儲的記憶體,而資源是有限的,不可能做到任其使用(這也是OS存在的價值),那麼就會出現資源使用完,或者甚至一些掉電的硬體問題。

是以,我們必須知道 異常是無法規避的,隻能做到去預防。

處理異常的好處

對于編碼角度,可以保證程式設計語言的代碼品質,提升健壯性。

Java中的異常-

java中,相關處理類。

Java 為什麼要 try catch?

簡單實作:

Java 為什麼要 try catch?

防禦式/契約式程式設計

例如controller類中進行使用者請求的資料進行預防測試。