Come sappiamo lo scopo della parola chiave "finale" in java. Mentre dichiariamo una variabile come finale, dobbiamo inizializzare la variabile. come "final int a = 10;" Non possiamo modificare il valore di "a". Ma se optiamo per HashTable, è possibile aggiungere qualche valore dichiarando anche l'HashTable come finale.Creazione di Hashtable come finale in java
Esempio ::
private static final Hashtable<String,Integer> MYHASH = new Hashtable<String,Integer>()
{{ put("foo", 1);
put("bar", 256);
put("data", 3);
put("moredata", 27);
put("hello", 32);
put("world", 65536); }};
ora sto dichiarando la MYHASH HashTable come definitiva. Se provo ad aggiungere altri elementi a questo, è il suo accettare.
MYHASH.put("NEW DATA", 256);
Ora "NEW DATA" viene aggiunto a HashTable. Le mie domande è: perché permette di aggiungere anche la sua dichiarazione come finale ????
Nota se il contenuto della mappa sono stati mutabile ('java.util.Date' o' java.awt.Point', per esempio), allora è ancora mutevole. –