最終更新:2016-02-09 (火) 18:52:11 (1401d)  

デザインパターン/Adapter はてなブックマークを見る

既存クラスを修正することなく、異なるインタフェースを持たせる

Adapter パターンには継承を利用するものと、委譲を利用するものの2つの実現方法がある

メモ

  • 新しいインターフェイスで必要な機能を既存のクラスを呼び出して使う

継承を利用したAdapter

  • class なんとかAdapter extends 既存のクラス implements 新インターフェイス{
      //新しいインターフェイスのメソッド
      public int getPrice(){
        //既存のメソッド
        return this.getCost();
      }
    }

委譲を利用したAdapter

  • class なんとかAdapter implements 新インターフェイス{
      //既存のクラス
      private Product product = new Product();
      //新しいインターフェイスのメソッド
      public int getPrice(){
        //既存のメソッド
        return product.getCost();
      }
    }