NotSerializableException解决方法
程序员文章站
2022-04-15 18:06:26
...
NotSerializableException
问题描述:
想要写入对象的时候的时候回抛出NotSerializableException:类名
原因:
写入的对象没有序列化,即没有实现java.io.Serializable接口
解决方法:
将要被写出对象的类序列化,可以不设置***,这时由系统自动设置,也可以自己设置***
设置方法:
private static final long serialVersionUID = xxxxxx;////xxxx看自己喜欢
系统自动生成的***serialVersionUID是根据类名,接口名,方法和属性等来生成的
所以只要更改了类中的属性、方法、各种名称就会使***发生变化,这时想要读取未改动类的时候的本地对象就会失败,因为读取的时候和卸写入的时候***不一样。
所以不想修改类之后这么麻烦,就会定义一个***
注意:
一、被static和transient(瞬间)修饰的字段或方法都是不被序列化的,也就是保存到本地和从本地读取的时候都不会操作这个东西
二、类中引用到的其他类的对象也需要序列化,比如如果类中用了ObjectOutputStream的话,会抛出NotSerializableException:java.io.ObjectOutputStream,意思是类ObjectOutputStream没有序列化
上一篇: extjs乱码解决方法
推荐阅读
-
IE浏览器提示是否停止运行此脚本的解决方法小结
-
HTML5不支持frameset的两种解决方法
-
Android4.4下MediaProvider无法向外置SD卡中文件写数据的解决方法
-
无法使用pip命令安装python第三方库的原因及解决方法
-
Vue 路由切换时页面内容没有重新加载的解决方法
-
使用vue-router与v-if实现tab切换遇到的问题及解决方法
-
vue2.0 element-ui中el-select选择器无法显示选中的内容(解决方法)
-
php导入csv文件碰到乱码问题的解决方法
-
JQUERY JSON的反序列化类 using问题的解决方法
-
jquery dialog open后,服务器端控件失效的快速解决方法