Presentation is loading. Please wait.

Presentation is loading. Please wait.

第9章 例外処理,パッケージ 9.1 例外処理 9.2 ガーベッジコレクション.

Similar presentations


Presentation on theme: "第9章 例外処理,パッケージ 9.1 例外処理 9.2 ガーベッジコレクション."— Presentation transcript:

1 第9章 例外処理,パッケージ 9.1 例外処理 9.2 ガーベッジコレクション

2 9.1 例外処理 コマンドラインの引数に 7 が与えられたときは “あたり” 、それ以外の数が与えられたときは “はずれ”
9.1 例外処理 public class Mikuji91 { public static void main(String[] args){ if(mikuji(args[0])){ System.out.println("あたり"); }else{ System.out.println("はずれ"); } static boolean mikuji(String s){ int number; number = Integer.parseInt(s); return (number == 7); // number と 7 が等しければ true, } // 等しくなければ false が返る`  コマンドラインの引数に 7 が与えられたときは “あたり” 、それ以外の数が与えられたときは “はずれ” と表示する右のプログラムは、 このままでは引数の与え方次第で、例外を起こし終了する。 引数を何も与えず起動したときArrayIndexOutOfBoundsException という例外 引数に10進表記でない文字列を与えたとき NumberFormatException という例外  例外は、プログラムが正常に期待される以外の事態に 出会ったとき発生し、何も設定されていないと、 例外を起こしたスレッドは終了する。 例外のときのメッセージ → 正常なときのメッセージ ↓

3 try catch( ) 例外が発生したときにスレッドを終了させるのではなく、例外に対応した処理をさせて実行を継続させることもできる。
 例外が発生したときにスレッドを終了させるのではなく、例外に対応した処理をさせて実行を継続させることもできる。 それには、try-catch 文 を用いる。 try catch(                ) 起きる可能性のある例外が複数あるとき、 1つの try 文に複数の catch 節をつけられる。 例外を起こす文を含むブロック 例外オブジェクトの型 仮引数 例外オブジェクトの型を Exception で すべての例外を捕らえる。 例外が起きたときに行うブロック 例えば1つ前のスライドにあるプログラムで、 引数に10進表記でない文字列を与えたとき 例外処理をさせる場合は、右の様に書き変える。 if 文 を try ブロックの中に入れることで、 NumberFormatException の例外のときエラーメッセージを、 mikuji メソッドの返値が真のとき “あたり” を、 mikuji メソッドの返値が偽のとき “はずれ” を表示するように public class Mikuji93 { public static void main(String[] args){ try{ if(mikuji(args[0])){ System.out.println("あたり"); }else{ System.out.println("はずれ"); } }catch(NumberFormatException e){ System.out.println("引数に数を指定してください"); static boolean mikuji(String s){ int number; number = Integer.parseInt(s); return (number == 7); // number と 7 が等しければ true, }        // 等しくなければ false が返る` ↓ 実行結果 ↓

4 9.2 ガーベッジコレクション new を用いるとメモリ内のヒープ領域にオブジェクトを生成する
9.2 ガーベッジコレクション  new を用いるとメモリ内のヒープ領域にオブジェクトを生成する  プログラム中で不必要になったオブジェクトをヒープ上から消す  解放されたメモリ領域を再利用する  ガーベッジコレクションは、どこからも参照されていないオブジェクトをヒープ上から探し消去するため、プログラムの実行に影響を与えることはない。  ガーベッジコレクションは自動的に行われるが、  Sys-tem.gc(); メソッド呼び出しで、プログラムの中から明示的に起動可能


Download ppt "第9章 例外処理,パッケージ 9.1 例外処理 9.2 ガーベッジコレクション."

Similar presentations


Ads by Google