无法序列化

时间:2011-11-09 18:48:00

标签: java exception serialization nullpointerexception frame

我正在使用swing组件在java中进行简单的骰子游戏。我只是想保存游戏的进度,所以我创建了一个名为State的类,然后我想序列化它。 但是当我尝试这样做时,NullPointerException返回了:

Exception in thread "AWT-EventQueue-0" java.lang.NullPointerException
    at javax.swing.plaf.synth.SynthLookAndFeel.paintRegion(SynthLookAndFeel.java:364)
    at javax.swing.plaf.synth.SynthLookAndFeel.update(SynthLookAndFeel.java:328)
    at javax.swing.plaf.synth.SynthViewportUI.update(SynthViewportUI.java:168)
...

使用调试器我看到文件已创建,因此对象已被序列化,但我无法继续执行主程序。

我在类State中有这个方法:

public void SaveState() {
    try {
        ObjectOutput out = new ObjectOutputStream(new 
        FileOutputStream("C://game.ser"));
        out.writeObject(this);
        out.close();
    } catch (FileNotFoundException ex) {
    } catch (IOException ex) {
    }
}

并且该类实现了Serializable

1 个答案:

答案 0 :(得分:1)

我明白了!问题是我试图序列化一个DefaultDataModel,一个State的数据库,所以我将搜索另一种方法来保存JTable的分数!谢谢你的答案!