在学习java时,如何看待java的异常处理机制,应不应该把异常看作一个普通的对象?
应不应该把catch看作逻辑正确的完整的一部分?
如何对java的异常处理机制有更深刻的理解以便更加适合的使用它?
ringa_lee2017-04-18 10:17:18
まず第一に、Java ではすべてがオブジェクト
であり、例外も当然オブジェクトであることを知っておく必要があります。
次に、例外は チェック例外
と 実行時例外
に分けられることを知っておく必要があります (@波福目さんのリマインダーに感謝します)。
あなたが話している例外処理メカニズムはチェック例外である必要があります。チェック例外はすべて Throwable
インターフェイスを実装しているため、Java の例外処理メカニズムによって処理できます。 一切皆是对象
,异常当然是一个对象。
接下来要知道异常分为受检查异常
和运行时异常
(感谢@泊浮目提醒)。
你所说的异常处理机制应该是受检查异常,受检查异常是可以被java的异常处理机制所处理的,因为他们都是实现了Throwable
这个接口。
catch是逻辑正确完整的一部分。
因为catch住的异常可能会影响你的方法下一步的动作。
例如打开一个文件,这时你得确定文件是打开了的这样才可以读写信息。
catch住的异常会让你确认如果文件没有打开,原因是什么,你接下来需要怎么做。是创建新文件?还是就此返回,不读写信息?
最后,想了解异常处理机制,还是需要看《java编程思想》
「Java プログラミングの考え方」
を読む必要があります。 🎜ringa_lee2017-04-18 10:17:18
上記の 未チェック例外
は、わかりやすくするために 実行時例外
と呼ぶ必要があります。さて、質問に一つずつ答えていきましょう。 不受检查异常
应该叫运行时异常
会比较好理解。好了,来回答问题,一个个来。
是的。
当然。还有finally
finally
もロジック全体の重要な部分です。