Nel primo esempio, si sta creando un'istanza ArrayList
. In quest'ultimo si crea istanza di una sottoclasse anonima di ArrayList
. Normalmente si dovrebbe sovrascrivere uno o più metodi nella sottoclasse,
altrimenti non c'è molto senso nel creare tale.
Come sottolinea John Skeet, esiste una ragione per la quale è necessario creare una sottoclasse anonima di un tipo generico, vedere his answer.
The Eclipse avverte che, al fine di aderire alle Serializable
specifiche (ArrayList
è Serializable
, in modo che tutti le sue sottoclassi sono troppo), è necessario definire un unico serialVersionUID
nella sottoclasse da cui il processo di deserializzazione può garantire che la definizione della classe non è cambiato in modo significativo da quando è stato serializzato (significativamente == tu stesso hai deciso che la nuova definizione è incompatibile con quella vecchia, quindi puoi esprimere il fatto cambiando il serialVersionUID
). Se non pubblichi mai la lista, l'avviso non ha importanza.
fonte
2011-10-17 06:22:08
Sottoclasse anonima. Perché ero così cieco ... –