Ich habe Schnittstelle mit Generika:Vererben Generics-Schnittstelle in Java
public interface Cache<CachePrimaryKey extends Object, RowModel extends CacheRowModel>
Ich brauche Kind-Schnittstelle zu schaffen, die Cache erweitert, sondern fügt neue Methoden während Generika zu halten. Was wäre die korrekte Syntax, um den Generikenteil beizubehalten?
Ich habe Implementierung wie.
public class InfoCache implements Cache<Long, DataRowModel>
Ich versuchte
public interface EnrichedCache<CachePrimaryKey extends Object,
RowModel extends CacheRowModel> extends Cache
aber wenn ich Schnittstelle für InfoCache-Klasse von Cache zu EnrichedCache ändern, ich bin „nicht zwingende Methoden von ihrer Oberklasse“ zu bekommen. Wenn ich "Methoden implementieren" in IntelliJ anstelle von Methoden für Long + DataRowModel verwenden, bietet es Methoden für Object und CacheRowModel (was ist nicht was ich will).
Was wäre der richtige Weg, um die Schnittstelle zu erben und alle Generika zu behalten?
'öffentliche Schnittstelle EnrichedCache erweitert Cache '. –
Beachten Sie, dass allgemein verwendete Stilrichtlinien erfordern, dass generische Namen ** einzelne Großbuchstaben ** oder möglicherweise mehrere Großbuchstaben ** sind. Ihre Namenskonventionen sind die gleichen wie für Klassen, was sehr verwirrend ist. Zum Beispiel, was 'öffentliche Schnittstelle Cache' tun, denken Sie? –
Außerdem 'Cache