为什么我得到java.io.NotSerializableException

时间:2019-03-09 04:36:45

标签: java bluej

我有一个程序,其中的约会存储在几天之内,而约会存储在几周之内。约会,天数和周数都是课程。我尝试在GUI中执行out.writeObject(Week1);,并且可以编译,但它无法序列化。 很抱歉,对于您中的某些人来说似乎很明显,但是我之前从未序列化过。

1 个答案:

答案 0 :(得分:-1)

您需要放置更多详细信息,例如代码和错误的完整堆栈跟踪。没人知道你的“出局”是什么。在这种情况下,我猜它是一个ObjectOutputStream

您需要知道何时要通过网络,电线等传输对象。对象必须遵循某种标准,才能将数据序列化为字节流。所有默认的java.lang对象都遵循该标准,例如String,Integer,Double等。因此,当您想要传输这些数据时,无需执行任何其他操作。

由于您的自定义对象未实现java.io.Serializable接口(我提到的标准),因此无法将其序列化为字节流。因此,您可能想要实现该接口或重写toString()方法并调用out.writeObject(Week1.toString())我猜。