奇怪的java.io.NotSerializableException

奇怪的java.io.NotSerializableException,java,serialization,servlets,Java,Serialization,Servlets,我有一个抽象类a,它实现了Serializable 还有一个具体的B类扩展了A类 在B类的构造函数中,我创建了C类公共final类C的实例 C抛出的wierd异常如下所示: Caused by: java.io.NotSerializableException: C at java.io.ObjectOutputStream.writeObject0(ObjectOutputStream.java:1164) at java.io.ObjectOutputStream.defau

我有一个抽象类a,它实现了Serializable

还有一个具体的B类扩展了A类

在B类的构造函数中,我创建了C类公共final类C的实例

C抛出的wierd异常如下所示:

Caused by: java.io.NotSerializableException: C at java.io.ObjectOutputStream.writeObject0(ObjectOutputStream.java:1164) at java.io.ObjectOutputStream.defaultWriteFields(ObjectOutputStream.java:1518) at java.io.ObjectOutputStream.writeSerialData(ObjectOutputStream.java:1483) at java.io.ObjectOutputStream.writeOrdinaryObject(ObjectOutputStream.java:1400) at java.io.ObjectOutputStream.writeObject0(ObjectOutputStream.java:1158) at java.io.ObjectOutputStream.defaultWriteFields(ObjectOutputStream.java:1518) at java.io.ObjectOutputStream.writeSerialData(ObjectOutputStream.java:1483) at java.io.ObjectOutputStream.writeOrdinaryObject(ObjectOutputStream.java:1400) at java.io.ObjectOutputStream.writeObject0(ObjectOutputStream.java:1158) at java.io.ObjectOutputStream.writeObject(ObjectOutputStream.java:330) at org.apache.catalina.session.StandardSession.writeObject(StandardSession.java:1572)
有什么问题吗?

我猜C是不可序列化的,您正在非瞬态字段中设置它。您需要将字段设置为临时字段或可序列化字段。

类C不可序列化。要么将其序列化,要么将字段标记为瞬态

您所说的字段..是什么意思。。?你说的是什么领域?你的意思是你不知道什么是领域?您是如何实现序列化的?如果无法序列化C对象,那是因为您设置了一个字段来引用它。我假设B不是C的内部类。