3つのインターフェースを1つ(ICountable
)にカプセル化し、具象クラスにこのカプセル化インターフェースを実装させようとしています。`ICountable
コード:
public interface ICountable extends IAddable, Cloneable, Serializable {}
Addable
インターフェイスの定義は次のとおりです。
public interface IAddable<T> {
T add(T other);
}
ICountable
具象クラス( )に実装しようとするとBaseCounter
、すべてのメソッドが実装されていないというエラーが表示されます(メソッドに不平を言うadd
)。理由がわかりません。コードは次のBaseCounter
とおりです。
public class BaseCounter implements ICountable {
@Override
public BaseCounter add(BaseCounter other) {
// TODO Auto-generated method stub
return null;
}
}
add
メソッドシグネチャをに変更します
public ICountable add(ICountable other)
状況を修正します。しかし、私が最初に望んでいたのは、他の3つを拡張する1つのインターフェイス( )を作成することでした(2つのマーカーと1つのインターフェイスは、同じタイプのオブジェクトでICountable
実行する実装クラスの機能を記述します)。メソッドの実装をadd
次のようにするために変更する必要があるもの:add
BaseCounter
public BaseCounter add(BaseCounter other)
私はあなたの提案をいただければ幸いです。