| Eclipse活用編 |
|
Javaでクラスをコーディングするうえでの基本的なルールの1つとして、コード中で発生する可能性がある「すべての」例外はcatchされなければならない――発生した例外は必ず処理されなければならない――というものがあります。
さほど厳密でないアプリケーションでは、すべての例外をExceptionクラス(すべての例外に共通のスーパークラス)でcatchしてしまうということもままあるようですが、厳密には例外クラスごとに処理方法を設計・コーディングするのが好ましいといえましょう。
ただし、コーディングに慣れたプログラマでも、個々のメソッドで発生する可能性がある例外クラスをすべて覚えているというわけではありません。結局は、コンパイラの指摘を待つか、あるいは、APIリファレンスなどを活用するしかないわけです。
しかし、Eclipseでは現在のコード中で発生し得る例外クラスを検出し、try/cacthブロックを自動的に生成する機能を持っています。これによって、コーディングの手間を省くことができ、例外処理それ自体に集中することができます。
■操作手順
(1)該当のコード部分を選択する
エディタ上で、tryブロックで囲みたいコード部分を選択、反転させます。
![]() |
(2)try/catchブロックを自動生成する
コードを選択状態で右クリック、表示されたコンテキストメニューから[ソース]→[Try/Catch ブロックで囲む]を選択してください。
![]() |
上図のように、選択されたコード中で発生する可能性があるすべての例外がcatchブロックとして列記されるはずです。
初期状態では単純にトレース情報を出力するのみですが、一般的にはなにかしらのフォロー処理を記述することが強く推奨されます。特別な状況でない限り、少なくともcatchブロックの中身が空であるという状況は避けるべきです(障害が発生しても、エラーメッセージもログも残らないわけですから、これは当然です)。最低限、ロギングかトレース情報の表示は行うべきでしょう、万が一、空のcatchブロックを作成する場合にも必ずその理由をコメントとして残す癖をつけておくとよいでしょう。
なお、もしも選択されたコード中に「catchされていない例外」が存在しない場合には、RuntimeException(実行時エラー)をキャッチするかどうかを聞かれます。
![]() |
RuntimeExceptionは、通常、Javaにおいては「catchする必要がない」例外です。
| 「Java TIPS」 |
TechTargetジャパン
- EclipseでScalaプログラミングを始めるための基礎 (2012/2/10)
概要や5つの特徴を紹介し、開発環境を構築して対話型実行環境「REPL」やEclipse上でHello Worldを実行します - 並列分散処理の常識をHadoopファミリから学ぶ (2012/2/8)
並列分散処理の課題やHadoopの長所/短所、そして短所を補うHadoop関連プロジェクトの構成や概要などを簡単に紹介 - WebLogicサーバ最新版「12c」の気になる4つの特徴 (2012/1/31)
久々にメジャーアップグレードしたJavaアプリケーションサーバについて、製品担当者に軽量インストーラなどの特徴を聞いた - GitHubをもっとソーシャルに使いこなすための7つ道具 (2012/1/23)
ソースコードホスティングのGitHub周辺で便利な新サービスが続々登場しているので、まとめて紹介しよう。特に連動クラウド「fluxflex」が注目だ
|
|
キャリアアップ
スポンサーからのお知らせ
- - PR -
イベントカレンダー
- - PR -



