/ / Perché Concurrent HashMap è serializzabile - java, serializzazione, concorrenza, concurrenthashmap

Perché HashMap concomitante è serializzabile: java, serializzazione, concorrenza, concurrenthashmap

Stavo passando attraverso il codice sorgente dell'hashmap concomitante e ho scoperto che è serializzabile. Anche HashMap è serializzabile.

Perché hashmap / hashmap concomitante è serializzabile? Intendo perché questa scelta progettuale è stata fatta.

risposte:

2 per risposta № 1

HashMap è serializzabile, gli strumenti di classe Serializable interfaccia

public class HashMap<K,V> extends AbstractMap<K,V>
implements Map<K,V>, Cloneable, Serializable {

private static final long serialVersionUID = 362498820763181265L;

Lo stesso è ConcurrentHashMap:

public class ConcurrentHashMap<K,V> extends AbstractMap<K,V>
implements ConcurrentMap<K,V>, Serializable {
private static final long serialVersionUID = 7249069246763182397L;

puoi ottenere maggiori dettagli su java serialize nel seguente link

http://www.tutorialspoint.com/java/java_serialization.htm


1 per risposta № 2

Come già detto, HashMap è Serializable, ma la mappa o Collection l'interfaccia non costringe l'implementazione di ogni raccolta ad essere "serializzabile". Se vuoi crearti sei proprio tu Set o Map e non impostarlo su serializzabile, è una tua scelta e non avrebbe senso forzare le persone a farlo.

Ma la mia ipotesi è, la maggior parte delle classi di utilità come Collection le implementazioni sono serializzabili quindi non tutti devono crearne una propria SerializableHashMap, perché queste classi sono usate molto e molte persone li serializzano. Quindi è una caratteristica di base per loro di avere.