それで、これは私が最近尋ねられたインタビューの質問に関するものです. インタビュアーは、カスタム例外をどのように作成するかを私に尋ねることから始めました。それに答えると、彼は私に RunTimeExceptions を作成する方法を尋ねました。チェック済み例外を作成するのと同じ方法でそれらを作成すると言いました。カスタム例外だけが RunTimeException クラスから拡張されます。次に、どのシナリオで独自の RunTimeException を作成するかを尋ねました。今、私はそれに対する良い答えを思いつきませんでした。私のプロジェクトでは、カスタムの RunTimeExceptions を作成しませんでした。
また、RunTimeExceptions を作成するべきではないと思います。JVM は限られた数の方法でのみ失敗する可能性があり、それらを適切に処理します。アプリケーションを作成している間は、どのランタイム例外が発生するか予測できないため、それらを処理する必要はありません。これらの条件を予測できれば、それらは RunTimeExceptions ではありません。新しい実行時例外も実行時例外の処理も必要ないので、なぜカスタムの RunTimeException を作成する必要があるのでしょうか。起こりうる障害条件として事前に考えられるものはすべて、コンパイル時に処理する必要があり、それはチェック例外になります。右?コンパイル時に処理できないものと、実行時に依存するものだけが RunTimeExceptions のカテゴリに入ります。
カスタム RunTimeExceptions を作成し、その RunTimeException をスローするカスタム メソッドを記述したとしても、メソッドがその特定の RunTimeException をスローすることを確認するにはどうすればよいでしょうか。そのマッピングをどのように行うか。私には不可能に思えます。
ここに何か/多くのものが欠けていますか? 親切にアドバイス。
ありがとう、チャン。