List<? super B> hoge = new ArrayList();

hoge.add( new A()); //error
hoge.add( new B());

class A{}
class B extends A{}

/*
? super クラス
設定したクラスとそのスーパークラスってことなのにAが追加できません

? extends クラス
こっちはサブクラスのはずですし、そもそもaddできないはず


というわけで、super の利用用途(動作)がよく分かりません。