インタフェースの抽出
関連項目
「インタフェースを抽出」コマンドを使用すると、クラスまたはインタフェース内の選択された非静的 public メソッドから新しいインタフェースが作成されます。インタフェースがそれ自体のメソッドの実装方法を制限することはないため、インタフェースは異なる機能を持つクラスで利用することができます。同じインタフェースを複数のクラスが実装できるため、インタフェースを作成すると、コードの再利用可能度が向上することがあります。複数のクラスで変更を行わず、インタフェースの変更だけですむことがあります。
インタフェースの抽出では、IDE は次を行います。
- 現在のクラスまたはインタフェースと同じパッケージ内の選択されたメソッドを使用して、新しいインタフェースを作成します。
- 新しいインタフェースを含められるよう、現在のクラスまたはインタフェースの implements または extends 節を更新します。新しいインタフェースによって拡張されるインタフェースはすべて除外されます。
インタフェースを抽出する
- インタフェースに移動するメソッドを含むクラスまたはインタフェースを開きます。
- ソースエディタでファイル内を右クリックし、「リファクタリング」>「インタフェースを抽出」を選択します。
「インタフェースを抽出」ダイアログが開きます。
- 「インタフェース名」テキストフィールドにインタフェースの名前を入力します。
- 「抽出するメンバー」一覧で、新しいインタフェースに抽出するメンバーを選択します。
インタフェースの抽出元のクラスにすでにインタフェースが実装されている場合は、実装されているそのインタフェースの項目も含まれます。そのインタフェースのチェックボックスを選択すると、新しいインタフェース用の implements 節が、抽出する新しいインタフェースインタフェースに移動します。
- 「リファクタリング」をクリックすると、IDE により変更が自動的に適用され、残りのステップが省略されます。「プレビュー」をクリックした場合は、「リファクタリング」ウィンドウに変更対象のコード行が表示されます。表示されたコード行のリストを参照し、変更しない行がある場合はその行のチェックボックスの選択を解除してください。プッシュするメンバーがあるクラスに複数のサブクラスがあり、メンバーを移動したくないサブクラスがある場合は、必ず、そのサブクラスのチェックボックスの選択を解除します。「リファクタリングを実行」をクリックし、選択した行に変更を加えます。
- 関連項目
- リファクタリングの手順早見表
- スーパークラスの抽出
- メソッドの抽出
- フィールド名またはメソッド名の変更
- リファクタリングでの変更の取消し
著作権と商標について