私はこのインターフェースを持っています:
interface MyInt<T> {
public void foo(T t);
}
そして、これらのクラス:
class MyString implements MyInt<String> {
@Override
public void foo(String t) {
throw new UnsupportedOperationException("Not supported yet."); //To change body of generated methods, choose Tools | Templates.
}
}
class MyDouble implements MyInt<Double> {
@Override
public void foo(Double t) {
throw new UnsupportedOperationException("Not supported yet."); //To change body of generated methods, choose Tools | Templates.
}
}
MyInt
クラスが実装するだけでなく(私はそれを行うことができます)、そのクラスが実装するかどうか、MyInt<String>
これまでの私のコードをテストしたいと思います:
Class<MyInt> c = MyInt.class;
Class c0 = MyString.class;
Class c1 = MyDouble.class;
System.out.println(c.isAssignableFrom(c0)); //true
System.out.println(c.isAssignableFrom(c1)); //true
文字列「sublass」を追加しようとするたびに (T の正しい名前さえ知らない)、コンパイル エラーが発生します。これを行う方法はありますか?