実装されたクラスのタイプに対して、それを実装する各クラスに特定の機能を強制するインターフェイスを作成したいと考えています。
したがって、MyClassA、MyClassB、MyClassC などのクラスがあり、すべて独自の型の関数が必要だとします。
MyClassA で:
public class MyClassA implements MyClass {
MyClassA function(MyClassA x) {
doSomethingImplementedInMyClassA(x);
}
}
MyClassB:
public class MyClassB implements MyClass {
MyClassB function(MyClassB x) {
doSomethingImplementedInMyClassB(x);
}
}
MyClass
問題は、そのような機能を必要とするインターフェイスをどのように作成するかです。
public interface MyClass {
MyClass function(MyClass x);
}
返される型は MyClass であり、その実装ではないため、明らかに機能しません。Javaでこれを適切に行うには?