码迷,mamicode.com
首页 > 编程语言 > 详细

Java核心API -- 12(对象序列化和反序列化)

时间:2015-08-08 18:27:35      阅读:206      评论:0      收藏:0      [点我收藏+]

标签:serializable   序列化   反序列化   writeobject   

1. 对象序列化

    将一个对象转换为字节形式的过程就是对象序列化。序列化还有个名称为串行化,序列化后的对象再被反序列化后得到的对象,与之前的对象不再是同一个对象。

    1)对象序列化必须实现Serializable接口,但该接口无任何抽象方法,不需要重写方法,只为了标注该类可序列化。

    2)且同时建议最好添加版本号(编号随便写):serialVersionUID。版本号,用于匹配当前类与其被反序列化的对象是否处于同样的特征(属性列表一致等)。反序列化时,ObjectInputStream会根据被反序列化对象的版本与当前版本进行匹配,来决定是否反序列化。 不加版本号可以,但是可能存在反序列化失败的风险。

    3)JDK提供的大多数java bean都实现了该接口

    4)transient关键字:序列化时忽略被它修饰的属性。

    5)对象的序列化使用的类:ObjectOutputStream

        writeObject(Object obj):①将给定对象序列化。②然后写出。

    6)对象的反序列化使用的类:ObjectInputStream

        Object readObject():将读取的字节序列还原为对象


    案例28:

        技术分享

        技术分享


 

本文出自 “永远年轻” 博客,请务必保留此出处http://kingkongzhao.blog.51cto.com/6319491/1682940

Java核心API -- 12(对象序列化和反序列化)

标签:serializable   序列化   反序列化   writeobject   

原文地址:http://kingkongzhao.blog.51cto.com/6319491/1682940

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!