Ich habe eine Sammlung mit dem Elementtyp von <K extends Comparable<K>>
, weil es bestellt ist.Generische Grenzen mit Rohtypen der Vorgenerika
Ich versuche, Joda LocalTime
mit dieser Sammlung zu verwenden - z. MyCollection<LocalTime>
. Leider ist Joda anscheinend Vor-Generika; LocalTime
implementiert rohe Comparable
.
Ich erhalte den Compiler-Fehler
Bound mismatch: The type LocalTime is not a valid substitute
for the bounded parameter <K extends Comparable<K>> of the type Interval<K>
Ich würde erwarten, dass dies nur mit einer Warnung arbeiten, da es durchaus möglich ist, eine rohe Art zu einer typisierten Variablen zugewiesen werden.
Warum funktioniert das nicht, und was kann ich dagegen tun?
Hier ist ein minimales Codebeispiel:
class Holder<K extends Comparable<K>> { }
class WTF extends Holder<LocalTime> { }
Ja, das mache ich in der Zwischenzeit. Hässlich wie Sünde, auf der Suche nach einer besseren Lösung! –