こんにちは!
ときです。>∩(・ω・)∩<
とうとう、Java研修の振り返りが最後になってしまいました…
早いですね・・・
といいつつ、javaの研修は結構前に行ったことだったりします。だから振り返っているのですが…
ただ、結構昔のことなので、研修〇日目というのが、そろそろ何日目にやったのかわからなくなってきました。(実際、1日に1単元進んでいるときと進んでいない時があります)
次回のSQLの振り返りからは「SQL研修〇日目にやったこと」に直したいですね(笑)
例外時の処理
実行時にわかる想定外の事態のことを「例外」といいます。
例えば、要素数を5個の配列を作成して、配列の添え字の10番目を指定するようなプログラムを作成すると、実行時にArrayIndexOutOfBoundsExceptionという例外が発生して、プログラムを正しく実行することができなくなります。
できれば、そういう例外が発生しないようにプログラムを作成するべきですが、大きいプログラムでは、いちいちすべてを確認することができないので、例外が発生しそうなところには、try-catch処理が必要になってきます。
個人javaとDBを連携させて使うとき、java側からファイルを指定して開くことがあるのですが、そこで「例外処理をやってくださいね!」とEclipseに指摘されることが多いです… 個人的にはファイルの参照とか、変数の代入とかの処理の時に怒られることが多いんじゃないかと思っています。
・Exception
例外クラスの親玉…というといいすぎでしょうか?ファイルの読み込みができない、ネットに接続できないなどいろいろなエラーが含まれます。
Exceptionは、いろんな例外クラスの親玉なので、try-catch文で、とりあえず何でもいいから例外をキャッチしたい!というときは、これを使うのも手ですね。いっぺんに扱えず、例外クラスごとに個別の対応が必要な時は、だめですけどね。
こっちの部類に入る例外クラスのエラーが発生しそうなときは、コンパイラに「例外処理を作れよー!」と警告されます。僕がよくEclipseさんに怒られているのは、こっちの例外なはず(笑)
・RuntimeException
例外クラスで、怒られないほう…
という覚え方はさすがにダメだと思いますが怒られないほうです。
よく解説サイトを見ると「対処しなくてもいいもの」とか「プログラムで捕捉する必要がないもの」と書かれていますが、書かなくてもコンパイルエラーにならないということですね。
Nullの文字列を表示させようとしたり、配列の要素外を指定したときに発生します。できるだけ、プログラムを作成しているときに発生しないようにできるのかな?と思うので、作成時に潰しておきたいですね。
いろいろ書いたくせに、例外とエラーの違いを実はあまり理解できていないんですよね……(ExceptionとErrorの違いは理解しているつもりですが)
例外とエラーの違いについては、このサイトが一番しっくりくるかな?と思っています。参考にさせていただいています。
https://wa3.i-3-i.info/word1426.html
例外とエラーの違いはもっと別のことだよ!という詳しい方がいましたら、こっそり教えてください。
それでは、またSQL研修の振り返りでお会いしましょう!