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();