クイック・フィックス

Java エディターは、入力中およびコンパイル後に検出された問題に対して修正を提案します。 問題または警告に対して修正プロポーザルが使用できることを示すために、エディターの注釈バーに電球が表示されます。
電球を左クリックするか Ctrl+1 (編集/クイック・フィックス) を呼び出すと、問題に対するプロポーザルがカーソル位置に示されます。
「クイック・フィックスの選択 (Quick fix selection)」ダイアログ

以下のクイック・フィックスが使用可能です。

パッケージ宣言
  • 欠落したパッケージ宣言を追加するか、パッケージ宣言を訂正
  • コンパイル単位を、パッケージ宣言に対応するパッケージに移動
インポート
  • 未使用、未解決、または非表示のインポートを除去
  • インポートの問題に対して「インポートの編成」を起動
  • 解決できない型への参照について新規クラスまたはインターフェースを作成
  • アクセスされるが可視ではない型の可視性を変更
  • 解決できない型への参照について類似する型に名前変更
  • 解決できないがプロジェクト内に存在する型のインポート・ステートメントを追加
  • 未確定の型参照 (1 つの型に 2 つの import-on-demand) について明示的なインポート・ステートメントを追加
  • 型名がコンパイル単位名と一致しない場合に型名またはコンパイル単位名のどちらかを変更
  • 未使用のプライベート型を除去
コンストラクター
  • 解決できないコンストラクターへの参照について新しいコンストラクターを作成 (this、super、または新規クラス作成)
  • パラメーターに一致しないコンストラクター参照の引き数を再配列または除去
  • コンストラクター名を持つメソッドをコンストラクターに変更 (戻りの型を除去)
  • アクセスされるが可視ではないコンストラクターの可視性を変更
  • 未使用のプライベート・コンストラクターを除去
  • 暗黙デフォルト・コンストラクターの super 呼び出しが未定義または不可視のとき、あるいは例外をスローしたときにコンストラクターを作成
  • インプリメントされていないメソッドが型に含まれている場合に、型修飾子を「abstract」に変更するか、メソッドをインプリメントに追加
メソッド
  • 解決できないメソッドへの参照について新しいメソッドを作成
  • 解決できないメソッドへの参照について類似するメソッドに名前変更
  • パラメーターに一致しないメソッド参照の引き数を再配列または除去
  • 参照されるメソッドのアクセス (可視性、static) を修正
  • 未使用のプライベート・メソッドを除去
  • 戻りの型が欠落しているメソッドまたは戻りの型が return ステートメントと一致しないメソッドの戻りの型を修正
  • return ステートメントを追加 (欠落している場合)
  • 本文のない非抽象メソッドについて、「abstract」に変更するか、本文を追加
  • 非抽象型の抽象メソッドについて、メソッドの abstract 修飾子を除去するか、型を abstract に設定
  • 本文のある抽象/ネイティブ・メソッドについて、abstract 修飾子または native 修飾子を除去するか、本文を除去
  • メソッドがコンストラクター呼び出し内部で呼び出される場合にメソッド・アクセスを「静的」に変更 (super、this)
  • エミュレートされたメソッド・アクセスを回避するためにメソッド・アクセスをデフォルト・アクセスに変更
フィールドと変数
  • 参照されるフィールドのアクセス (可視性、static) を修正
  • 解決できない変数への参照について新しいフィールド、パラメーター、またはローカル変数を作成
  • 解決できない参照について類似する名前を持つ変数に名前変更
  • 未使用のプライベート・フィールドを除去
  • static フィールドの非 static アクセスを修正
  • 外部型でアクセスされるローカル変数に「final」修飾子を追加
  • エミュレートされたメソッド・アクセスを回避するためにフィールド・アクセスをデフォルト・アクセスに変更
  • 型の不一致を修正するためにローカル変数型を変更
  • 初期化されていない変数を初期化
例外処理
  • 不要な catch ブロックを除去
  • キャッチされない例外を、Try/Catch で囲むか、周囲の try ブロックに catch ブロックを追加することによって処理
  • 親メソッドにスロー宣言を追加するか、既存のスロー宣言を汎用化することによって、キャッチされない例外を処理
その他
  • 型のミスマッチを修正するためにキャストを追加または変更
  • 非 NLS ストリングについて、NLS ウィザードを開くか、非 NLS としてマーク

クイック・アシストは、問題または警告がない場合にも使用できるプロポーザルです。 電球が表示されないため、ユーザーは使用可能な支援について知っておく必要があります。

クイック・アシスト
  • catch 文節を親メソッドのスロー宣言に置換
  • 式ステートメントを新規ローカルまたは新規フィールドへの代入に変換
  • 周囲の「if」、「for」、「while」、「do」ステートメントを除去
  • 1 つの catch または finally ブロックを持つ周囲の try ブロックを除去
  • 周囲の匿名クラス、ブロック、または括弧を除去
  • リンクされた「テンプレート」モードの型、メソッド、または変数をローカルで名前変更
  • 選択された行をテンプレート (「if」、「while」など) で囲む

関連概念
Java エディター

関連参照
JDT アクション

特記事項