网站大量收购闲置独家精品文档,联系QQ:2885784924

《android序列化.ppt

  1. 1、本文档共17页,可阅读全部内容。
  2. 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
序列化 序列化 序列化是干什么的 ? ??序列化是为了保存在内存中的各种对象的状态(也就是实例变量,不是方法),并且可以把保存的对象状态再读出来。虽然可以用自己的各种各样的方法来保存object states,但是Java提供了一种应该比较好的保存对象状态的机制,那就是序列化。 序列化 Android序列化对象主要有两种方法,实现Serializable接口、或者实现Parcelable接口。实现Serializable接口是Java SE本身就支持的,而Parcelable是Android特有的功能,效率比实现Serializable接口高,而且还可以用在IPC(进程间通信)中。实现Serializable接口非常简单,声明一下就可以了,而实现Parcelable接口稍微复杂一些,但效率更高,推荐用这种方法提高性能。 Serializable序列化 Serializable数据 在Android开发中,有时候需要从一个Activity中传递数据到另一个Activity中,在Bundle中已经封装好了简单数据类型:String 、int 、float等。但是如果想要传递一个复杂的数据类型,比如一个对象,   在Bundle的方法中,有一个是putSerializable()方法,Serializable对象是一个可恢复对象接口,只需要让对象实现Serializable接口,就可以使用Bundle.putSerializable()方法传递对象数据。 Serializable序列化 一个Activity转到另一个Activity时传递Serializable数据(Bundle实现) Serializable序列化 Person类: Serializable序列化 FirstActivity: Serializable序列化 ResultActivity: Parcelable接口序列化 android Parcelable化的提供了一个接口 Parcelable和一个工具类 Parcel Parcelable:一个规范接口,定义实现Parcelable需要实现的功能 Parcel:数据存取的工具类,供用户在实现Parcelable接口时存取自定义数据用,也供系统传递数据时使用。 Parcelable接口序列化 Parcelable接口定义 Parcelable接口序列化 Parcelable接口序列化 通过实现Parcelable接口序列化对象的步骤: ?1、声明实现接口Parcelable ?2、实现Parcelable的方法writeToParcel,将对象序列化为一个Parcel对象 ?3、实例化静态内部对象CREATOR实现接口Parcelable.Creator: 其中public static final一个都不能少,内部对象CREATOR的名称也不能改变,必须全部大写。 4、完成CREATOR的代码,实现方法createFromParcel,将Parcel对象反序列化为对象。 即通过writeToParcel将对象映射成Parcel对象,再通过createFromParcel将Parcel对象映射成对象。也可以将Parcel看成是一个流,通过writeToParcel把对象写到流里面,在通过createFromParcel从流里读取对象,只不过这个过程需要实现,因此写的顺序和读的顺序必须一致。 Parcelable接口序列化 Parcel对象可以通过以下方法写入或读取byte, double, float, int, long, String这6种类型变量 : Parcelable接口序列化 Student类: Parcelable接口序列化 FirstActiity: Parcelable接口序列化 SecondActivity: Parcelable接口序列化 Evaluation only. Created with Aspose.Slides for .NET 3.5 Client Profile 5.2.0.0. Copyright 2004-2011 Aspose Pty Ltd. 序列化原因: 1.永久性保存对象,保存对象的字节序列到本地文件中; 2.通过序列化对象在网络中传递对象; 3.通过序列化在进程间传递对象。? Evaluation only. Created with Aspose.Slides for .NET 3.5 Client Profile 5.2.0.0. Copyright 2004-2011 Aspose Pty Ltd. ?选取参考原则: 1.在使用内存的时候,Parcelable 类比Serializable性能高,所

文档评论(0)

jizi6339 + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档