写java程序,需要将对象
private List Memberlist = new ArrayList<>();
序列化并输出到外部存储的时候遇到的一个错误:
java.io.NotSerializableException:
原因的话:
如果一个可序列化的对象包含对某个不可序列化的对象的引用,那么整个序列化操作将会失败,并且会抛出一个NotSerializableException.
非静态内部类拥有对外部类的所有成员的完全访问权限,包括实例字段和方法。为实现这一行为,非静态内部类存储着对外部类的实例的一个隐式引用。序列化时要求所有的成员变量是Serializable,现在外部的类并没有implements Serializable,所以就抛出java.io.NotSerializableException异常。
(原文:https://blog.csdn.net/tangnengwu/article/details/37901059 )
所以这里可以将
public class CarInsurance{ ............ }
1、继承类Serializable:
public class CarInsurance implements Serializable{ ............ }
2、当然也可以将内部类写成静态的
文章知识点与官方知识档案匹配,可进一步学习相关知识
AIEarth是一个由众多领域内专家博主共同打造的学术平台,旨在建设一个拥抱智慧未来的学术殿堂!【平台地址:https://devpress.csdn.net/aiearth】 很高兴认识你!加入我们共同进步!