Java は、このクラスに Type 宣言のサブクラスを追加することを許可していません
public class Exam<T> {
public void set(Holder<? super T> hold){
}
public T get(Holder<? extends T> holder){ return holder.get();}
public static void main (String[] args){
Exam<Question> eq = new Exam<Question>();
eq.set(new Holder<Identification>());
}
}
Identification は Question のサブクラスです。
これは私のホルダークラスがどのように見えるかです
public class Holder<T> {
T item;
public void set(T item){ this.item = item; }
public T get(){return item;}
}
エラー
The method set(Holder<? super Question>) in the type Exam<Question> is not applicable for the arguments (Holder<Identification>)