List<? extends A>
1 つのクラス (A) を拡張する 4 つのクラス (B、C、D、E) があります。ジェネリックを作成して、いずれかのクラス (B、C、D、E) のオブジェクトを追加しようとしています
。問題なくできます。問題は、クラス (B、C、D、E) のメソッドにアクセスできないことです。これを行う別の方法はありますか?
部品コード
public class A{
protected int id;
public void setId(int id){}
public int getId(){}
}
public class B extends A{
private name;
public void setName(String name){}
public void getName(){}
}
public class Generic{
List<? extends A> myList;
public List<? extends A> getMyList(){}
public void setList(ArrayList<? extends A> MyList){}
}
そして、これが私がしていることです。
Generic myObject = new myList<B>;
myObject.getMyList().get(counter).getId();
上記のコードは正常に動作しますが、やりたいことはできませんが、以下はできません。
myObject.getMyList().get(counter).getName();