码迷,mamicode.com
首页 > 其他好文 > 详细

Serializable 和 parcelable的实现和比较

时间:2015-03-02 22:15:10      阅读:123      评论:0      收藏:0      [点我收藏+]

标签:

首先这个两个接口都是用来序列化对象的

但是两者在性能和应用场合上有区别,parcelable的性能更好,但是在需要保存或者网络传输的时候需要选择Serializable因为parcelable版本在不同版本可能不同

 

实现方面,serializable直接实现接口无需实现任何接口,只需要提供一个版本ID

而parcelable需要实现几个方法

 // 写数据进行保存
     public void writeToParcel(Parcel out, int flags)
 {
         out.writeInt(mData);
         out.writeString(mStr);
     }


 // 读数据进行恢复
     private MyParcelable(Parcel in)
{
  mData = in.readInt();
         mStr = in.readString();
}
// 用来创建自定义的Parcelable的对象
     public static final Parcelable.Creator<MyParcelable> CREATOR
             = new Parcelable.Creator<MyParcelable>() {
         public MyParcelable createFromParcel(Parcel in) {
             return new MyParcelable(in);
         }

         public MyParcelable[] newArray(int size) {
             return new MyParcelable[size];
         }
     };

Serializable 和 parcelable的实现和比较

标签:

原文地址:http://www.cnblogs.com/u3shadow/p/4309831.html

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