1.6 KiB
1.6 KiB
Termin 10
Fragen
Links
https://git.haw-hamburg.de/pm2-tutorium
- Aufgaben
- Tutoriumsfolien
- In Präsentationsansicht: https://wi-pm2-tut.informatik.haw-hamburg.de
Plan für heute
Fragestunde
Fragen
- Was ist die Lösung der Feinschmeckeraufgabe aus der Generics Vorlesung? "Wie mache ich aus einem
Sec<Object>
das nurString
enthält einSet<String>
?" - Warum ist in der Referenzlösung eine Map in der Wertklassenaufgabe?
- Wie wende ich die Regel "Producer extends consumer super (PECS)" an?
Feinschmeckeraufgabe
Map in Wertklasse
PECS
"Producer extends consumer super" beschreibt das Benutzen von extends
und super
bei Collections als generische Parameter.
Wenn man in einer Methode nur Sachen aus einer Collection entnimmt dann ist die Collection für uns ein Producer und wir benutzen extends
.
public void listeAuf(Collection<? extends Thing> coll) {
// Sachen aus der Collection herrausnehmen
}
Wenn man nur Sachen in die Collection einfügt dann ist die Collection für uns ein Consumer und wir benutzen super
.
public void packeRein(Collection<? super Thing> coll) {
// Sachen in die Collection einfügen
}
Will man beides machen (einfügen und entnehmen) dann muss ein fester Typ genutzt werden.