今回は例外処理とは何か、また発生しうる例外をどのように対処するのかについて見ていく。
例外処理とは?
プログラミングを行っていると、さまざまな問題が発生する。
その中で、プログラムの実行中に例外が発生してしまうと強制終了されてしまったりする。
例外処理とは、プログラムの実行中に起こる問題を処理して通常通りにアプリなどが動くようにすること。
tryとcatchを使用して例外処理を行う。
例外が起こる様々な原因
例外が起きる原因として、以下のものが挙げられる。
- プログラムに開くように指定したファイルが存在していなかった
- ユーザーが間違ったデータを入力した
- 通信中にネットワーク接続が切れた
- メモリ不足
- その他
ユーザーが原因のものから、コンピュータが原因のものなど様々。
優れたプログラマーになるには全ての起こりうる例外をきちんと処理できるスキルが求められる。
tryとcatchとは?
例外はtryとcatchを使用して見つけることができる。
try・・・プログラムの実行中にエラーが起きるかチェックするためのもの
catch・・・tryの中でエラーが発生したときに実行するコードを入力
tryとcatchは2つで1組。
一緒に使用される。
tryとcatchを使用したプログラム
tryとcatchを使用したプログラムの構文は以下の通り。
問題があるか確かめたいコードを入力
}
catch(Exception e) {
実行中に例外が起きた際に処理するコードを記入
}
Exception eは全ての例外を見つけるのに必要なもの。
catchを使用するときは「Exception e」も使用する。
上の構文を利用して作ったコードが以下。
例外が発生する可能性がある一つに、「配列」がある。
配列については以下参照。
配列とは何か? Javaプログラミング初心者の記録vol.26
以下はその配列を使用したもの。
public static void main(String[] args) {
try {
int[] A= {5,10,15};
System.out.println(A[8]);
}
catch(Exception e){
System.out.println(“どこかがおかしい”);
}
}
}
このプログラムを実行すると以下が表示される。
配列を作ったとき、{}の中には「5,10,15」の3つの数字しかない。
だが、表示させるように指示するコードには「9番目の数字を表示するように」と書いてある(System.out.println(A[8]);)。
番号は[0]から付けられる。
A[8]というのは[0][1][2][3][4][5][6][7][8]と9番目の位置。
コードを作成したときには、9番目のコードを使用するように指定されているにもかかわらずバツ印などの表示も出ないからエラーが見た目では分からない。
コードが書かれた数字の横には×マークなどもなく、なにもエラーが出ていない。
tryとcatchが無ければ、プログラムを実行すると以下が表示されてしまう。
at JavaTakusanRenshu/Renshu.testReigai.main(testReigai.java:8)
これはプログラムを実行するまで分からない。
tryとcatchを使用しなければ、プログラムが壊れてしまうかもしれない。
このようなことを防ぐために、例外が起こりそうなコードにはtryとcatchを使用して例外処理を行う。
最後に
例外処理は、プログラムを強制終了させないためにも必ず押さえておきべきもの。
問題が起きたプログラムを誰も修正できなくなってしまうと、せっかく作ったプログラムが台無しになってしまう。
次はもう少し複雑なコードで試してみようかな・・・。
コメント