方面我是新來OOP,我總是看到error is thrown..
runtime exception is thrown..
究竟是「拋出」意味着OOP
從我的理解,如果某些條件爲真不執行throw
後什麼。
但什麼是像這樣的句子意味着
an error is thrown when the program executes
方面我是新來OOP,我總是看到error is thrown..
runtime exception is thrown..
究竟是「拋出」意味着OOP
從我的理解,如果某些條件爲真不執行throw
後什麼。
但什麼是像這樣的句子意味着
an error is thrown when the program executes
當一個方法中出現錯誤,該方法將創建一個對象並把它關到運行系統。該對象稱爲異常對象,包含有關錯誤的信息,包括錯誤發生時的類型和程序的狀態。創建一個異常對象並將其交給運行時系統稱爲拋出異常。
拋出異常後,可以由適當的處理程序處理。如果拋出的異常對象的類型與處理程序可以處理的類型相匹配,則認爲異常處理程序是合適的。
所以術語拋出意味着,系統剛剛完成拋出異常的過程,現在它可以由我們所執行的任何處理程序來處理。
從馬特Weisfeld - 先進的面向對象的概念 http://www.informit.com/articles/article.aspx?p=2026020&seqNum=2
如果異常try塊中拋出,catch塊將會處理它。當執行塊時拋出異常時,會發生以下情況:
- try塊的執行被終止。
- 檢查catch子句爲 以確定是否包含 違規異常的適當catch塊。 (可能有多個 catch語句每個try語句塊。)
- 如果沒有任何catch子句處理 違規異常,則將其傳遞給下一個更高級別的try 塊。 (如果未在代碼中捕獲異常,則系統最終會捕獲該異常,並且結果是不可預知的 - 即 應用程序崩潰。)
- 如果catch子句匹配(遇到第一個匹配 ), catch子句中的語句被執行。
- 然後使用try塊後面的語句繼續執行。
你有代碼和平來展示一個例子嗎?你在談論豁免嗎? –