IntelliJ IDEA 2020.1ヘルプ

コードリファクタリング

リファクタリング(英語)は、新しい機能を作成せずにソースコードを改善するプロセスです。リファクタリングはコードを堅牢にし、dry(英語)を維持しやすくします。

リファクタリングを呼び出す

  1. リファクタリングするアイテムを選択します。エディターでプロジェクトツールウィンドウまたは式/シンボルでファイル/フォルダーを選択できます。

  2. 選択可能なリファクタリングのリストを開くには、Ctrl+Shift+Alt+T を押します。

    refactor this popup
    または、特定のリファクタリング用のキーボードショートカットを使用することもできます。

リファクタリングを元に戻す必要がある場合は、Ctrl+Zを押します。

リファクタリングの変更をプレビューする

一部のリファクタリングでは、IntelliJ IDEAを適用する前に変更内容をプレビューすることができます。

  1. 潜在的な変更(リファクタリングが実行される使用箇所のリスト)を表示するには、リファクタリング・プレビューダイアログでプレビューをクリックします。

    specific refactor dialog

  2. 検索ツールウィンドウで行われる変更を確認します。 Delete を除外するか、不要と思われる Ctrl+X の変更を削除できます。

    refactoring preview

  3. リファクタリング実行をクリックして、変更を続行します。

競合の解決

IntelliJ IDEAがあなたのリファクタリングで問題に遭遇すると、衝突のリストとそれらの簡単な説明があるダイアログを開きます。

refactoring confilicts dialog
  • 継続をクリックして問題を無視し、 検索 ツールウィンドウでプレビューを開きます。

  • ビューに競合を表示をクリックして、 検索 ツールウィンドウの競合エントリを開き、さらに処理します。

    例: Delete を押すかキャンセルをクリックしてリファクタリングからエントリを除外し、エディターに戻ることができます。

    refactoring conflicts tool window

リファクタリング設定を構成する

  1. 設定/環境設定ダイアログ Ctrl+Alt+Sで、エディター | 一般を選択します。

  2. 一般ページのリファクタリングセクションでリファクタリングオプションを調整し、OKをクリックします。

IntelliJ IDEAでサポートされている最も人気のあるリファクタリング

安全な削除

Alt+Delete

ソースコードで参照されているファイルを削除しないようにします。

安全な削除

コピー/移動

F5 / F6

要素をコピー/移動します。

移動およびコピー・リファクタリング

メソッドの抽出

Ctrl+Alt+M

これらのリファクタリングアクションは、コードの重複を減らすのに役立ちます。

メソッドの抽出

定数の抽出

Ctrl+Alt+C定数の抽出

フィールドの導入

Ctrl+Alt+Fフィールドの導入

パラメーターの導入

Ctrl+Alt+Pパラメーターの導入

変数を導入する

Ctrl+Alt+V変数の導入

名前変更

Shift+F6

要素の名前を変更します。

名前の変更リファクタリング

インライン化

Ctrl+Alt+N

要素をインライン化します。抽出の反対の行為。

インライン化

シグネチャーの変更

Ctrl+F6

メソッドクラスの呼び出しシグネチャーを変更します。

シグネチャーの変更
最終更新日: 2020年6月2日

関連ページ:

検索ツール・ウィンドウ

検索ツールウィンドウには、次の検索結果が表示されます。パス内検索/置換、使用箇所の検索、構造検索と置換、リファクタリング・プレビュー、データソースの使用箇所の検索、表、または列。使用箇所ペインは、親コードペインでエントリーが選択されたときに依存関係ビューアーに表示されます。各検索の結果は、別のタブに...

移動およびコピー・リファクタリング

コピーリファクタリングでは、別のパッケージにクラスのコピーを作成できます。また、ファイル、ディレクトリ、またはパッケージのコピーを別のディレクトリまたはパッケージに作成することもできます。コンテキストメニューからすべてのリファクタリングアクションにアクセスできます。コピーリファクタリングを実行するリ...

メソッドの抽出

メソッドの抽出リファクタリングを使用すると、グループ化できるコードフラグメントを取得し、別のメソッドに移動して、古いコードをメソッドの呼び出しに置き換えることができます。このリファクタリングは、エディターでインテンションアクションとしても使用できます。抽出するコードを選択し、 を押してメソッドの抽出...

定数の抽出

定数の抽出リファクタリングにより、ソースコードを読みやすく保守しやすくなります。また、ハードコードされた定数を値や目的について何の説明もしないで使用するのを避けるのに役立ちます。エディターで、定数で置き換えたい変数の式または宣言を選択します。を押して定数を入力するか、を選択します。デフォルトでは、I...

フィールドの導入

フィールドの導入リファクタリングでは、新しいフィールドを宣言し、選択した式で初期化することができます。元の式はフィールドの使用箇所に置き換えられます。その場でフィールドを抽出するフィールドに抽出するコードの一部内にキャレットを配置します。を押すか、メインメニューからを選択します。導入する式をフィール...

変数の導入

変数の導入リファクタリングは、理解しにくい表現を見つけたり、コード全体のいくつかの箇所で重複したりすると、そのような表現やその部分の結果を複雑ではない別の変数に配置する際に役立ちます。理解しやすいさらに、コードの重複を減らすことができます。Java 1.8以降のバージョンから、IntelliJ ID...