我的代码如下:
File ser = new File("locationinstringform");
FileInputStream fileIn3 = new FileInputStream(ser);
ObjectInputStream objectIn3 = new ObjectInputStream(fileIn3);
myObj = (MyObj) objectIn3.readObject();
objectIn3.close();
fileIn3.close();
myObj.someFunction(x, y);
FileOutputStream fileOut3 = new FileOutputStream(ser);
ObjectOutputStream objectOut3 = new ObjectOutputStream(fileOut3);
objectOut3.writeObject(myObj);
objectOut3.close();
fileOut3.close();
当我运行我的代码时,我得到一个错误跟踪到objectOut3.writeObject(myObj)的行;
错误如下: 线程“main”中的异常java.io.NotSerializableException:java.util.HashMap $ KeySet
但是,我定义的MyObj类不是HashMap或Set,也没有HashMap或Set。它只有2个实例对象,其中一个是我编码的对象,另一个是ArrayList。我确保我编写的所有类都实现了可序列化接口。
关于为什么会出现问题以及解决方案是什么的任何想法?