try文は自動生成で作ろう!
ソースコードの記述の際、例外処理はどのようにしていますか? 自分でtry文を書いて処理してはいませんか? つい、面倒くさくて、catch(Exception e)といったcatch文でまとめて例外処理している、なんて人はかなり多いんじゃないでしょうか。
これもEclipseにやらせてしまうのが一番です。やり方は実に簡単。例外が発生すると思われるソースコード部分を選択し、<ソース><囲む><try/catchブロック>メニューを選ぶだけです。
このメニューで作成されるtry文は、非常にきれいに整理された形になっています。実際にちょっと試してみましょう。例えば、こんな処理を考えてみてください。
public static void main(String[] args) {
byte[] msg = new byte[10];
System.out.print("type number: ");
System.in.read(msg);
String s = new String(msg).trim();
int n = Integer.parseInt(s);
System.out.println(Math.pow(n, 0.5));
}
ユーザから数字を入力してもらい、そのルート2を計算して出力するサンプルです。このmain内の処理をすべて選択して<try/catchブロック>メニューを選ぶとどうなるか試してみましょう。
public static void main(String[] args) {
try {
byte[] msg = new byte[10];
System.out.print("type number: ");
System.in.read(msg);
String s = new String(msg).trim();
int n = Integer.parseInt(s);
System.out.println(Math.pow(n, 0.5));
} catch (NumberFormatException e) {
// TODO 自動生成された catch ブロック
e.printStackTrace();
} catch (IOException e) {
// TODO 自動生成された catch ブロック
e.printStackTrace();
}
}
これが生成されたソースコードです。単にtryをつけるだけでなく、その内部で発生する例外を解析し、各例外ごとにcatchを用意してくれます。これにより、非常にきめ細かな例外処理が簡単に作成できるわけです。
オーバーライドもメニューで!
メソッドのオーバーライドも<ソース>メニューの得意分野です。特にAWTやSwingなどを利用する場合、オーバーライドするメソッドをいくつも書かないといけないことが良くあります。こうしたときには、<ソース><メソッドのオーバーライド/実装>メニューを使いましょう。
オーバーライドするメソッドをONにする。 |
これを選ぶと、継承元であるスーパークラスとそこにあるメソッドがすべて整理され表示されます。ここからオーバーライドしたいメソッドのチェックをONにしてOKすれば、それらをすべてまとめてオーバーライドしてくれます。
オーバーライドは、ちょっとメソッド名などをタイプミスしただけで正しく認識してくれませんから、特にビギナーにとっては「自分で書くより、作ってもらったほうが安心」といえますね。