Generics

di il
5 risposte

Generics

Salve a tutti, potresti spiegarmi cosa sono i tipi generics ?

5 Risposte

  • Re: Generics

    dorwas2 ha scritto:


    Salve a tutti, potresti spiegarmi cosa sono i tipi generics ?
    Eh ... questa è una di quelle domande che apre un "mondo" di cose che ci sarebbero da dire a riguardo ...
    Comunque, per dirlo concisamente, i generics sono una grossa funzionalità che è stata introdotta in Java 5 tanti anni fa (2004) per dare la possibilità di definire classi ma anche metodi (e costruttori, anche se molto più raramente) "parametrici", cioè che si possono adattare all'utilizzo con tipi di dati arbitrari.
    Una spiegazione più appropriata richiederebbe MOLTO più spazio ...
  • Re: Generics

    Grazie mille per la risposta...forse sono stato un po troppo generico...volevo saperne di piu sui generics utilizzati con le Collection...

    grazie !
  • Re: Generics

    dorwas2 ha scritto:


    volevo saperne di piu sui generics utilizzati con le Collection...
    L'uso basilare dei generics con le collezioni è abbastanza semplice. Da Java 5 tutte le collezioni, quindi le interfacce e le classi di implementazione più altri tipi correlati (Iterator, ListIterator, Enumeration ecc..), sono diventati tipi "generici".

    Pertanto es. ArrayList è diventato ArrayList<T> e significa che può essere utilizzato "parametrizzato", cioè specificando un tipo concreto come parametro di tipo.

    Prima di Java 5:
    List listaDiStringhe = new ArrayList();
    listaDiStringhe.add("abc");
    String s = (String) listaDiStringhe.get(0); // cast necessario

    Da Java 5:
    List<String> listaDiStringhe = new ArrayList<String>();
    listaDiStringhe.add("abc");
    String s = listaDiStringhe.get(0); // cast NON necessario

    Così facendo c'è una maggior type-safety, perché in questo listaDiStringhe puoi solo inserire oggetti String e non "altro" come invece era possibile (e purtroppo non si poteva impedire) prima di Java 5.
    E quando estrai un oggetto, il compilatore inserisce un cast "nascosto" in modo da poter estrarre l'oggetto vedendolo già del tipo parametrizzato.
  • Re: Generics

    Acquisare un libro e' troppo costoso/faticoso?

  • Re: Generics

    migliorabile ha scritto:


    Avevo studiato generics/collections proprio su questo libro, davvero ottimo e bellissimo!
    Consigliatissimo!
Devi accedere o registrarti per scrivere nel forum
5 risposte