Sinds versie 5 ondersteunt Java ook Generics met als doel fouten rond casten tegen te gaan en ook een bijkomende abstractielaag toe te voegen aan java. Java Gernerics wordt in het boek maar geïntroduceerd in hoofdstuk 12 maar wordt wel best nu reeds gebruikt bij het implementeren van de Comparable Interface. Je zal zien dat Dodona een waarschuwing geeft indien je een Comparable Interface implementeert zoals beschreven in het boek (zonder generics).

Hoe ga je dus beter te werk:

Definitie van een klasse die een Comparable Interface implementeert

Dus in plaats van gewoon:

public Class [NaamKlasse] implements Comparable

gebruik je beter

public Class [naamklasse] implements Comparable<[NaamKlasse]>

Header van de compareTo methode

De aangepaste definitie van je klasse heeft als gevolg dat je de compareTo methode kan gedefinieerd worden met een argument van het juiste type en dus niet van het algemene type Object:

public int compareTo([NaamKlasse] o) 

Deze werkwijze heeft als voordeel dat men niet moet casten van Object naar het juiste type en dus minder kans heeft op errors.