• Serializable 和 parcelable的实现和比较


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

    但是两者在性能和应用场合上有区别,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];
             }
         };
    -----人若无名,则可专心练剑
  • 相关阅读:
    桃花扇
    望故乡
    Unity资源加载方式总结
    [Spark]-RDD详解之变量&操作
    [Spark]-RDD之创建
    [Spark]-RDD初识
    [Spark]-编译(2.3.1)&部署(YARN-Cluster)
    [Spark]-背景
    [Hive]-常规优化以及执行计划解析
    [转载]线上应用故障排查之一:高memory占用
  • 原文地址:https://www.cnblogs.com/u3shadow/p/4309831.html
Copyright © 2020-2023  润新知