Hallo zusammen,
habe mal eine Frage zu Generics, die mir beim Lernen für den SCJP aufgefallen ist. Es geht um diesen Methodenkopf:
Das bedeutet doch folgendes: Es wird eine Liste als Parameter zugelassen, die als generischen Typen "Bar" oder eine Super-Klasse davon hat, richtig? Aber dieser übergebenen Liste könnte ich ja nun keine Objekte vom Typ "Object" (eindeutig Super-Klasse von "Bar") hinzufügen. Was macht also der Ausdruck "? super Bar" hier für einen Sinn?
Vielen Dank schon mal im Voraus!!
habe mal eine Frage zu Generics, die mir beim Lernen für den SCJP aufgefallen ist. Es geht um diesen Methodenkopf:
Code:
void foo ( List<? super Bar> list)
Das bedeutet doch folgendes: Es wird eine Liste als Parameter zugelassen, die als generischen Typen "Bar" oder eine Super-Klasse davon hat, richtig? Aber dieser übergebenen Liste könnte ich ja nun keine Objekte vom Typ "Object" (eindeutig Super-Klasse von "Bar") hinzufügen. Was macht also der Ausdruck "? super Bar" hier für einen Sinn?
Vielen Dank schon mal im Voraus!!
Zuletzt bearbeitet: