throws關鍵字首先用在函數聲明中,在返回類型之前,例如標準庫中map的函數簽名:
然後在函數中,如果有可能的異常,可以拋出這個異常。通常,您可以使用枚舉來表示壹類異常。此枚舉可以實現錯誤協議,例如:
這樣,通過throw函數中可能出現的異常,函數可以反饋錯誤,迫使調用該函數的程序員處理所有可能的錯誤,並降低維護成本。
Do-catch用於處理可能的異常:
Rethrows關鍵字只起到傳遞異常的作用。在函數或方法中,您可以通過調用可以引發的函數來傳遞可能的異常,如下例所示:
觀察函數語句,實際上有壹個函數可以將throw作為參數,然後在返回類型前面添加關鍵字throws。可以拋出的函數直接在函數內部調用以傳遞可能的異常,處理拋出的函數或方法與處理拋出的函數或方法相同:
Throw在函數或方法中引發異常,因此調用方必須顯式處理可能的異常。Throws本身並不拋出或處理異常,只是起到傳遞異常的作用,最後返回標準庫中的map函數。以上述內容為例:
這裏,throw用於map的函數參數中,當元素小於0時會引發異常。