2つのインターフェイス(下に表示)、通常/フリーキット用と購入可能なキット用のインターフェイスが1つあります。彼らはどちらも2つのメソッドを含んでいますが、購入可能なキットの「getIcon」メソッドでは、プレーヤーのプロファイルがパラメータとして必要となり、キットを購入したかどうか確認できます。Java - デザインパターンを選択する - 2つのインターフェイス(同じものに余分なパラメータがある場合を除く)
これらの2つのインターフェイスをリンクするために使用する最適なデザインパターンは何ですか?あなたが私にそれを行うコードを表示することはできますか?
2つのインターフェイス:
public interface Kits {
void giveKit(Player player);
Item getIcon();
}
public interface PurchasableKits {
void giveKit(Player player);
Item getIcon(Profile profile);
}
私はAdapterパターンを使用しようとしましたが、それはないと思える「getIcon」メソッドは、パラメータとしてプロファイルに取っているので、それは使用されません。 。事前
私はこれらのインターフェイスの目的を理解しているかどうかは分かりませんが、少なくとも 'public interface PurchasableKits extends Kits'を作成することで、複製された' giveKit() 'メソッドを削除できます。そのサブインターフェースは 'Item getIcon(Profile profile)'メソッドしか持たないでしょう。 –