如果用戶定義的異常擴展類異常併成爲檢查的異常,那麼RunTimeException也會發生異常,這是不同的。我嘗試過搜索多個論壇,但仍然無法理解對待RTE的因素與普通用戶定義的異常不同 - 因爲兩者都擴展了Exception類。UserDefinedException&RunTimeException區別
0
A
回答
0
甲用戶定義的異常可以是:
- 如果它直接或間接地延伸
Exception
,或 - 未經檢查的類型,如果它直接或間接地延伸
RuntimeException
一個檢查類型。
(理論上你可以擴展Throwable
或Error
或Error
一個子類,但這是不必要的,不好的做法,並可能是危險的。)
的JVM沒有把檢查,未經檢查的類型不同。不同的處理由Java編譯器完成,這就是爲什麼如果未正確處理檢查異常,您會得到編譯錯誤。這些規則是由Java規範(JLS)而不是運行時系統規定的。
...怎麼來
RunTimeException
這也延伸Exception
有什麼不同?
因爲JLS說的是。檢查和未檢查異常的規則是Java語言的一部分,就像語法,範圍規則,類型規則等一樣。
+0
,這有助於... JLS是我錯過的地方。非常感謝你解釋這一點。非常感謝您的幫助。 –
相關問題
- 1. RuntimeException:緩衝區不夠大像素
- 2. Java RuntimeException
- 3. RuntimeException&Error
- 4. Catch RuntimeException
- 5. JApplet RuntimeException
- 6. HttpURLConnection RuntimeException
- 7. AlertDialog.Builder RuntimeException
- 8. PopupMenu RuntimeException
- 9. RuntimeException(Chromecast)
- 10. runtimeexception:無法銷燬活動和RuntimeException:.nosuchfieldexception:mChildfragmentManager
- 11. 區別
- 12. 區別?
- 13. 區別
- 14. 區別
- 15. 區別?
- 16. 區別
- 17. 區別
- 18. 區別
- 19. 區別
- 20. 區別
- 21. 區別
- 22. 區別
- 23. 區別
- 24. 區別
- 25. 區別
- 26. 區別
- 27. 區別?
- 28. 區別
- 29. 區別?
- 30. 區別
由於'RuntimeException'是語言的一部分,它肯定可以以不同的方式處理,就像'Serializable'不僅僅是一個普通的接口,而且還以特殊的方式處理。 – Thomas
因此JVM對待RTE的方式不同嗎? –