Serialize从HashMap Java扩展的类

时间:2013-08-07 15:26:54

标签: serialization hashmap

我不知道为什么HashMap实例是可序列化的,并且扩展HashMap的类的实例不可序列化。

所以,这段代码有效:

    HashMap<String,String> map=new HashMap<String,String>();
    ...
    ByteArrayOutputStream out = new ByteArrayOutputStream();
    ObjectOutputStream objOut = new ObjectOutputStream(out);
    objOut.writeObject(map);
    objOut.close();

这不起作用:

    public class MyMap extends HashMap<String,String>{}
    ...
    MyMap  map=new MyMap();
    ...
    ByteArrayOutputStream out = new ByteArrayOutputStream();
    ObjectOutputStream objOut = new ObjectOutputStream(out);
    objOut.writeObject(map);
    objOut.close();

1 个答案:

答案 0 :(得分:0)

解决。这是因为如果有静态修饰符,则内部类是可序列化的。