Index
Related
Tipi Generici
Creare istanze di classi con generici:
Dichiarare e assegnare variabili di tipi generici:
Dichiarare metodi che prendono in input tipi generici:
Esempio Classe Generica:
- Per definire un tipo generico della classe, si utilizza la sintassi a parentesi angolari dopo il nome della classe con il tipo generico da utilizzare
- Da quel punto, si utilizza il tipo generico come un qualsiasi altro tipo di classe
Istanziare la classe generica:
Specificare più tipi generici di classe:
I generici funzionano solo con i tipi derivati:
I tipi generici differiscono sulla base dei loro tipi:
Estendere le classi generiche:
- Ovviamente è possibile estendere le classi generiche per creare classi più specifiche
- Esempio orario estende classe coppia::
Esercizio: Lista Linkata generica:
Le interfacce Comparable e Comparator sono generiche:
Estendere Interfaccia con vincolo di comparabilità:
- Stiamo dicendo che il tipo deve essere un tipo comparabile se vuole implementare MinMax
Esempio teorico:
Esempio reale:
Definire metodo generico senza ritorno:
Definire metodo generico ritorno generico:
Definire metodo generico con tipo definito:
Warning
- Ogni volta che un metodo ha come input un tipo generico deve avere
<T>
prima del tipo del metodo- Il controllo di consistenza di tipo viene effettuato a tempo di compilazione
Jolly ?:
il jolly si può utilizzare sen non mi serve il simbolo nella classe
- Sono equivalenti (in questo caso) ma il secondo non ha nozione del tipo utilizzato
Usare <?> per prendere in input un oggetto di una classe con qualsiasi tipo parametrico:
- Nel caso in cui non sia necessario conoscere il tipo parametrico, si può utilizzare <?>
Esempio:
Type Ensure:
Pecs
Sta per, quando devi fare operazioni di produzione che consumano gli elementi effettui operazioni con questo protocollo qua …
continua in MDP 02 May