0.はじめに
Javaを大学で学んでおります。
概念や特徴を以下の文類に分けてまとめました。
関連学習
【Java】用語
【Java】メソッド・型
【Java】オブジェクト指向
【Java】インスタンス・コンストラクタ
【Java】例外処理
【Java】注意点・ルール
【Java】コードの記述向上にむけて(個人用memo)
1.例外
Java
においてプログラム時に予期しないエラーのこと
例外発生時には以下の選択肢に分かれる
- 1.あらかじめ準備されたエラーメッセージが表示しプログラムが終了される
- 2.プログラム記述者が定める処理を実行する(例外処理を記述する)
例外処理
try ~ catch文
を使用し例外処理を行うことができる
try {
例外が発生する可能性がある文
} catch (例外名 引数 ) {
例外が発生した場合の処理
}
catchは複数の記述が可能
仮に複数のエラーが発生する可能性がある場合はそれぞれ条件ごとに処理の記述が可能
try {
//不正な演算処理(ArithmeticExceptionの発生と入力値が整数ではないNumberFormatExceptionの可能性がある
int c = a / b;
} catch (ArithmeticException e) {
System.out.println("0で割っている演算である");
} catch (NumberFormatException e) {
System.out.println("入力値は整数値ではない");
例外・例外のクラス
例外はクラスとして宣言される
ArrayIndexOutOfBoudsExceptionクラス
コンパイル時にチェックがされないクラス
例外処理を記述しなくてもコンパイル・実行が可能
RuntimeExceptionクラス
例外処理を記述しないとコンパイル時にエラーが発生するクラス
ArithmeticException
不正な算術演算を行った際に発生する例外
整数値のint型
を0
で割った場合などに起こる不正演算で発生する
InputMismatchException
Scannerクラス
により読み込んだ値が適切でない場合に発生する例外
NumberFormatException
文字列から数値への変換が正しくされない時に発生する例外
クラスは階層ごとになっている
RuntimeExceptionクラス
は
- NumberFormatException
- ArthmeticException
この2つのスーパークラスである
そのためRuntimeExceptionクラス
はNumberFormatException・ArthmeticException
をキャッチすることができる
2.例外処理例
エラー文
int [] a = new int[10];
a[10] = 100; //配列は9までしかないため[10]の記述によりエラーが発生、強制終了となる
a[10]=100;
をtry内
の例外が発生する可能性がある文とし記述を行う
以下のようにcatch~
の分で例外をキャッチする
例外処理文
int [] a = new int[10];
try {
a[10] = 100;
} catch ( ArrayIndexOutOfBoundsException a) {
System.out.println(e);
}
参考文献
スッキリわかるJava入門 第3版
著者:中山清喬 と国本大悟 発行所:株式会社インプレス