美文网首页
Android 序列化简介

Android 序列化简介

作者: LibraLIn | 来源:发表于2020-11-16 21:14 被阅读0次

    首先先简单简介下序列化是什么

    序列化其实就是一种可以将对象实现永久性存储的一种方式,因为对象对计算机来说只是一片内存区域,内存区域里保存一些数据,相当于我们要将这些内存中的二进制保存文件或者是云端中,然后实现互相能够将对象的状态进行互相传输。

    如果大家看不懂的我介绍的话,大家可以简单的理解下维基百科对序列化的介绍。

    目前我们已知android中有俩种序列化的实现方式  都是通过实现接口的方式,

    1.实现Serializable 接口的方式

    然后通过io的方式   目前已知wirteObject,readObject 这俩个方式实现序列化和反序列化的一个状态

    2.实现Parcelable 接口的方式

    实现起来较为复杂,通过Parcel 和Creater 实现序列化和反序列化  

    其实这里就不列举 具体实现了  主要想跟大家说一下这俩种实现的优缺点都在哪

    1.Serializable的方式  实现起来较为简单,而且应用方式比较多,但是他相对序列化反序化  内存开销比较大  速度较慢

    根据Serializable的原理,Serializable 将对象当成一颗树,遍历并反射各个节点获取信息。期间产生很多中间变量来保存信息,序列化与反序列化过程要创建大量的中间变量来获取、存储数据。而Parcelable则不用,直接将各种需要的数据写入Parcel.cpp中

    反射。Serializable使用了大量反射,而反射操作耗时。Parcelable使用了非常少的反射操作,来获取入口,而数据,由对象来读入写出,因此省略了Serializable中必要的通过反射才能获取数据的多数时间

    存储方式。即数据的存储位置,以及数据本身和助记信息

    相关文章

      网友评论

          本文标题:Android 序列化简介

          本文链接:https://www.haomeiwen.com/subject/mrozbktx.html