コードリファクタリング
リファクタリング(英語)は、新しい機能を作成せずにソースコードを改善するプロセスです。リファクタリングは、コードを安定させ、dry(英語) に保ち、保守を容易にできます。
リファクタリングの呼び出し
リファクタリングするアイテムを選択します。エディターでプロジェクトツールウィンドウまたは式 / シンボルでファイル / フォルダーを選択できます。
選択可能なリファクタリングのリストを開くには、Ctrl+Alt+Shift+T を押します。

または、特定のリファクタリング用のキーボードショートカットを使用することもできます。
フィールドのカプセル化、static メンバーの移動、委譲の抽出、インターフェースの抽出、スーパークラスの抽出などの拡張範囲のリファクタリング操作用にマルチキャレット選択を作成することもできます。この機能を利用するには、リファクタリングを適用する各メンバーにキャレットを置きます。IDE はリファクタリングダイアログでこれらのメンバーを自動的に事前選択してチェックします。
リファクタリングを元に戻す必要がある場合は、Ctrl+Z を押します。
構造ツールウィンドウからリファクタリングを呼び出す
左側のツールバーで「
」をクリックして、構造ツールウィンドウを開きます。
構造ツールウィンドウで、リファクタリングアクションを呼び出すメソッドまたはフィールドを選択し、右クリックして、コンテキストメニューから適用するリファクタリングの名前を選択します。

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

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

リファクタリング実行をクリックして、変更を続行します。
競合の解決
IntelliJ IDEA があなたのリファクタリングで問題に遭遇すると、衝突のリストとそれらの簡単な説明があるダイアログを開きます。

問題を無視して続行するには、強制的にリファクタリングをクリックします。
検索ウィンドウで開くをクリックして、検索ツールウィンドウの競合エントリを開き、さらに処理します。
検索ツールウィンドウで、リファクタリングを選択してリファクタリングを適用するか、キャンセルをクリックしてエディターに戻ることができます。
リファクタリング設定を構成する
設定ダイアログ(Ctrl+Alt+S)で、を選択します。
コード編集ページのリファクタリングセクションでリファクタリングオプションを調整し、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 | メソッドまたはクラスの呼び出しシグネチャーを変更します。 |
関連ページ:
複数のカーソルと選択範囲
IntelliJ IDEA エディターで入力、コピー、貼り付けを行う場合、複数のカーソルを切り替えて、アクションが複数の場所に同時に適用されるようにすることができます。コード補完やライブテンプレートなどの高度なエディターアクションもサポートされており、各キャレットに適用されます。ファイルに追加できるキャレットの数は 1000 に制限されています。この制限を増やす場合は、カスタム JVM オプションを開き、次の行を追加します: 最近追加されたキャレットはプライマリと見なされます。現在のエディターライ...
検索ツールウィンドウ
検索ツールウィンドウには、次の検索結果が表示されます。パス内検索 / 置換、使用箇所の検索、構造検索と置換、リファクタリングプレビュー、データソース、テーブル、列の使用箇所の検索。XPath で検索、使用箇所ペインは、親コードペインでエントリが選択されたときに依存関係ビューアーに表示されます。検索ツールウィンドウには複数のタブを含めることができます。デフォルトでは、検索ごとに現在のタブで検索結果が更新されます。各検索の結果を別のタブに表示するには、ツールウィンドウのヘッダーを右クリックし、を選択...
移動およびコピーリファクタリング
コピーリファクタリングでは、別のパッケージにクラスのコピーを作成できます。また、ファイル、ディレクトリ、パッケージのコピーを別のディレクトリまたはパッケージに作成することもできます。コピーを実行するリファクタリングリファクタリングする識別子(エディター内のクラスまたはプロジェクトツールウィンドウ内のファイルなど)を選択します。メインメニューで、に移動するか、を押します。コピーダイアログで、コピーの名前と場所を指定し、OK をクリックします。移動リファクタリングを使用すると、パッケージとクラスをプ...
メソッドの抽出
メソッドの抽出リファクタリングを使用すると、グループ化できるコードフラグメントを取得し、別のメソッドに移動して、古いコードをメソッドの呼び出しに置き換えることができます。メソッドを抽出する際には、変数を確認する必要があります。出力変数が 1 つしかない場合、抽出されたメソッドの戻り値として使用されます。出力変数が複数ある場合、メソッドの抽出リファクタリングが適用されず、エラーメッセージが表示されることがあります。この場合、メソッドの抽出を動作させるためのいくつかの回避策があります。例: すべての...
定数の導入
定数の導入リファクタリングにより、ソースコードの読みやすさと保守性が向上します。また、値や目的についての説明がないままハードコードされた定数の使用を回避するのにも役立ちます。エディターで、定数で置き換えたい変数の式または宣言を選択します。を押して定数を入力するか、メインメニューで選択します。または、表示されるツールバーで抽出をクリックし、定数を選択します。表示されたリストから名前を選択するか、自分の名前を入力してを押します。または、を 2 回押して定数の導入ダイアログを開き、そこでやにした
フィールドの導入
フィールドの導入リファクタリングでは、新しいフィールドを宣言し、選択した式で初期化することができます。元の式はフィールドの使用箇所に置き換えられます。その場でフィールドを抽出するフィールドに抽出するコード部分内にキャレットを置きます。を押すか、メインメニューでに移動します。導入する式をフィールドとして選択します。IntelliJ IDEA がコード内で複数の出現箇所を検出した場合、どの出現箇所を置き換えるかを指定できます。を 2 回押してフィールドの導入ダイアログを開くと、可視性オプションや変数...