Android 序列化
来源:互联网 发布:服务器安装mysql数据库 编辑:程序博客网 时间:2024/06/05 19:20
1. 概念
序列化 (Serialization)将对象的状态信息转换为可以存储或传输的形式的过程。
2. 目的
序列化目的:
永久的保存对象数据
将对象数据保存在文件当中,或者是磁盘中;通过序列化操作将对象数据在网络上进行传输
由于网络传输是以字节流的方式对数据进行传输的, 因此序列化的目的是将对象数据转换成字节流的形式;将对象数据在进程之间进行传递
Activity 之间传递对象数据时,需要在当前的 Activity 中对对象数据进序列化操作.在另一个Activity中需要进行反序列化操作讲数据取出;在Intent之间,基本的数据类型直接进行相关传递即可,但是一旦数据类型比较复杂的时候,就需要进行序列化操作。
3.Serializable 与 Parcelable的比较
性能比较:
Android 的 Parcelable 设计初衷就是因为Serializable效率过慢;
因此 Parcelable 的性能要强于 Serializable, 大致原因如下:
因为 Parcelable 在内存中使用, Serializable 使用在网络或者磁盘中,因此 Parcelable 在性能方面要强于 Serializable;
Serializable 在序列化操作的时候会产生大量的临时变量
(原因是使用了反射机制)从而导致GC的频繁调用,因此在性能上会稍微逊色在读写数据的时候, Parcelable 是在内存中直接进行读写, 而Serializable 是通过使用IO流的形式将数据读写入在硬盘上;
虽然 Parcelable 的性能要强于 Serializable, 但是仍然有特殊的情况需要使用Serializable, 而不去使用 Parcelable, 因为 Parcelable 无法将数据进行持久化, 因此在将数据保存在磁盘的时候, 仍然需要使用Serializable,因为 Parcelable 无法很好的将数据进行持久化。
- Android bitmap序列化
- Android中序列化
- Android 序列化 Parcelable
- Android中的序列化
- android的序列化
- android对象序列化
- android中的序列化
- Android 序列化
- android 传值 序列化
- android 序列化
- android 的序列化
- android 对象序列化
- android序列化Parcelable
- android序列化
- 浅谈Android序列化
- 浅谈Android序列化
- Android序列化Parcelable
- Android学习 - 序列化
- Java:学生成绩录入(for语句)
- intelij idea: Exception in thread "main" java.lang.ClassNotFoundException
- 遗传算法
- Linux下解压缩文件 及tar命令的使用学习
- weex学习之路(一)--项目快速创建
- Android 序列化
- JDBC的工具类
- 1044. 火星数字(20)
- jsonp
- 2015 ACM National Contest Romania
- C/C++:使用dlopen、dlsym、dlclose运行时装载动态库
- bootstrap中如何使input中的小图标获得点击事件
- c文件操作之fgets,fputs
- 21st-Oct 时对时错的方向指令string数组