Eclipseのtry-catch自動生成
プログラミングでは、(プログラム上の)決まり文句というのがあります。
毎度同じような文(決まり文句)を入力するのは面倒なので、
決まっているなら、自動で書いてくれよ。と思ったりしますよね。
毎度、管理人イガジーです。
Eclipseは、そうなんです、自動でそういった「決まり文句」を生成してくれます。
例えば
int a=Integer.parseInt(s);
(s は “123”というようなString)という文を書いたら
その文を範囲指定して Source:Surround With:Try/catch Block
を指定すると
try {
int a=Integer.parseInt(s);
} catch (NumberFormatException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
という「決まり文句」が生成されます。
ここで、うれしいのは、catch (NumberFormatException e)と
対応する例外名がちゃんと入る ということです。
さらに
FileReader fr=null;
BufferedReader br=null;
fr = new FileReader("test.dat");
br = new BufferedReader(fr);
String buf=br.readLine();
と書いて、これ全体を範囲指定して
Source:Surround With:Try/catch Block を指定すると、あっという間に
try {
FileReader fr=null;
BufferedReader br=null;
fr = new FileReader("test.dat");
br = new BufferedReader(fr);
String buf=br.readLine();
} catch (FileNotFoundException e) {
// TODO Auto-generated catch block
e.printStackTrace();
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
が出来上がります。
ちゃんと、FileNotFoundException e (new FileReader用) と
IOException e (br.readLine用)の catch ブロックができるって
感動しませんか?
管理人イガジーは、これまで調べるのが面倒なので何でもかんでも
catch (Exception e) と書いてたのですが、これを機に、ちゃんとした
Exception名付きの catch ブロックにしようと思います。
Source:Surround With には、Try/catch だけではなく
do-while, for, if, runnable, while などで囲うこともできるようです。
便利です。お試しあれ。
この記事へのコメントはこちら