欢迎来到代码驿站!

JAVA代码

当前位置:首页 > 软件编程 > JAVA代码

Java Serializable和Parcelable详解及实例代码

时间:2021-04-04 10:16:26|栏目:JAVA代码|点击:

对 Serializable和Parcelable理解

1、首先他们两个接口都是为了实现对象的序列化,使之可以传递,所谓序列化就是将对象信息装换成可以存储的介质的过程。

2、Serializable是jdk所提供的序列化接口,该接口存在于io包下,可想用于输入输出,使用非常简单,只要让你的类实现此接口就ok了;可以使用transient关键字修饰你不想序列化的属性。

3、Parcelable是sdk所提供的序列化接口,使用较上者麻烦,实现此接口后,需要重写writeToParcel方法,将需要序列化的属性写入Parcel中;

然后还需要CERATOR静态成员属相,以便从parcel中取出数据。如下

public static final Creator<Pen> CREATOR = new Creator<Pen>() {
    @Override
    public Pen createFromParcel(Parcel in) {
      return new Pen(in);
    }
    @Override
    public Pen[] newArray(int size) {
      return new Pen[size];
    }
  };
  @Override
  public int describeContents() {
    return 0;
  }
  @Override
  public void writeToParcel(Parcel dest, int flags) {
    dest.writeString(color);
    dest.writeInt(size);
  }

 4、两种都是用于支持序列化、反序列化话操作,两者最大的区别在于存储媒介的不同,Serializable使用IO读写存储在硬盘上,而Parcelable是直接在内存中读写,很明显内存的读写速度通常大于IO读写,所以在Android中通常优先选择Parcelable。

通过此文希望能帮助有需要的小伙伴,彻底理解Java Serializable和Parcelable的知识,谢谢大家对本站的支持!

上一篇:基于spring@aspect注解的aop实现过程代码实例

栏    目:JAVA代码

下一篇:spring容器初始化遇到的死锁问题解决

本文标题:Java Serializable和Parcelable详解及实例代码

本文地址:http://www.codeinn.net/misctech/94565.html

推荐教程

广告投放 | 联系我们 | 版权申明

重要申明:本站所有的文章、图片、评论等,均由网友发表或上传并维护或收集自网络,属个人行为,与本站立场无关。

如果侵犯了您的权利,请与我们联系,我们将在24小时内进行处理、任何非本站因素导致的法律后果,本站均不负任何责任。

联系QQ:914707363 | 邮箱:codeinn#126.com(#换成@)

Copyright © 2020 代码驿站 版权所有