Naja, die Überschrift ist wohl etwas zu reißerisch ;-)
Konkret handelt es sich nur um folgendes Beispiel:
D.h. eine Speicherseite mit Key/Value Paaren. Schlüssel und Werte sollen generisch sein, sind sie aber im Prinzip sowieso (Record ist ein Interface und stellt einen Wert dar). Kann man eigentlich generell sagen, dass man in so einem Fall, d.h. immer wenn es sich um ein Interface handelt keine bounded wildcards benötigt?
Macht ja im Prinzip keinen Unterschied ob ich Collection<? extends Record> values(); habe das ganze als interface modifier (bzw. ich weiß die Terminologie nicht) public interface RecordPage<K, V extends Record> extends Page { ... } oder wie ich bereits oben habe einfach Record zurückgeben (zur Erinnerung, Record ist ein Interface).
Kann man das so verallgemeinern dass es nur bei abstrakten oder "normalen" Klassen Sinn macht bounded wildcards zu nutzen?
Viele Grüße,
Johannes
Konkret handelt es sich nur um folgendes Beispiel:
Java:
/**
* Record page.
*
* @author Johannes Lichtenberger
*
*/
public interface RecordPage<K> extends Page {
/**
* Entry set of all nodes in the page. Changes to the set are reflected in the
* internal data structure
*
* @return an entry set
*/
Set<Entry<K, Record>> entrySet();
/**
* All available records.
*
* @return all records
*/
Collection<Record> values();
...
}
D.h. eine Speicherseite mit Key/Value Paaren. Schlüssel und Werte sollen generisch sein, sind sie aber im Prinzip sowieso (Record ist ein Interface und stellt einen Wert dar). Kann man eigentlich generell sagen, dass man in so einem Fall, d.h. immer wenn es sich um ein Interface handelt keine bounded wildcards benötigt?
Macht ja im Prinzip keinen Unterschied ob ich Collection<? extends Record> values(); habe das ganze als interface modifier (bzw. ich weiß die Terminologie nicht) public interface RecordPage<K, V extends Record> extends Page { ... } oder wie ich bereits oben habe einfach Record zurückgeben (zur Erinnerung, Record ist ein Interface).
Kann man das so verallgemeinern dass es nur bei abstrakten oder "normalen" Klassen Sinn macht bounded wildcards zu nutzen?
Viele Grüße,
Johannes