cosa significa questo in java???

Pubblicità

franco7scala

Utente Attivo
Messaggi
40
Reazioni
0
Punteggio
26
ho usato questa dichiarazione tempo fa ma ora non ricordo piu cosa significa:

Codice:
private <E extends Comparable<? super T>> void heapSort(){

//codice metodo

}

cosa significa <E extends Comparable<? super T>> ????

grazie
 
Hai fatto uso dei generics: sostanzialmente, significa che, all'interno del codice del metodo, fai uso di un tipo generico E che è sottotipo di una classe che implementa l'interfaccia Comparable di un certo tipo generico (da qui il ?) che è supertipo di T.

L'uso dei tipi generici ti permette di scrivere codice riutilizzabile per tipi di dato differenti (ad esempio, liste, alberi, ...), evitando però di "sporcare" il codice con tanti cast come nel caso in cui implementassi una lista generica come una lista di Object (poi, quando il codice viene compilato, una lista generica è realizzata esattamente come una lista di Object e vengono fatti un sacco di cast, però non li vedi :D)

Puoi trovare molte info online cercando "Generics Java" ;)
 
Pubblicità
Pubblicità
Indietro
Top