ジェネリクスなんですが、
List<? super A> list = new ArrayList<A>();
のようにsuperで型宣言した場合、
list.get(); した時に全部Object型になります。
? の部分にどんな型が来ても互換性が取れるようにってことだと思うんですが、
それなら極力 super なんて使わずに、
List<A> list = new ArrayList<A>();
にするほうがいいと思うんですが、ジェネリクスでの<? super *>の活用しどころってどういうケースでしょうか?