フィールドのカプセル化

関連項目

フィールドのカプセル化とは、あるフィールドが 1 対のアクセス用メソッドによってのみアクセスされるようにコードを再構築することです。アクセス用メソッドは、書き込み/読み取りメソッド、あるいは取得、設定メソッドのことです。

一般に、フィールドのカプセル化は、フィールドのアクセス修飾子を private に変更し、クラスの外部からそのフィールドに直接にはアクセスできないようにすることです。ほかのクラスがそのフィールドを参照するには、アクセス用メソッドの使用が必要になります。

IDE の「フィールドをカプセル化」コマンドを使用すると、次のことができます。

フィールドをカプセル化する

  1. ソースエディタでフィールド、またはフィールドへの参照を右クリックして、コンテキストメニューから「リファクタリング」>「フィールドをカプセル化」を選択します。

    「フィールドをカプセル化」ダイアログ が開きます。

  2. 「カプセル化されるフィールド一覧」表で、カプセル化するフィールドのチェックボックスが選択されていることを確認します。複数のフィールドを選択できます。
  3. (任意) フィールドの可視性も設定できます。
  4. (任意) アクセス用メソッド (取得および設定メソッド) の可視性も設定できます。
  5. (任意) アクセス用メソッドを使用するようにコードを書き換えない場合は、「フィールドがアクセス可能な場合でもアクセス用メソッドを使う」チェックボックスの選択を解除します。

    このオプションは、次の両方が真の場合にのみ意味を持ちます。

  6. 「リファクタリング」をクリックすると、IDE により変更が自動的に適用され、残りのステップが省略されます。「プレビュー」をクリックした場合は、「リファクタリング」ウィンドウに変更対象のコード行が表示されます。表示されたコード行のリストを参照し、変更しない行がある場合はその行のチェックボックスの選択を解除してください。プッシュするメンバーがあるクラスに複数のサブクラスがあり、メンバーを移動したくないサブクラスがある場合は、必ず、そのサブクラスのチェックボックスの選択を解除します。「リファクタリングを実行」をクリックし、選択した行に変更を加えます。
関連項目
リファクタリングの手順早見表
スーパークラスへのクラスメンバーの移動
サブクラスへのクラスメンバーの移動
メソッドの署名の変更
メソッドの抽出
フィールド名またはメソッド名の変更
リファクタリングでの変更の取消し

著作権と商標について