优点:
缺点:
public class MyParcelable implements Parcelable { * private int mData;//参数 * public int describeContents() {//类描述,一般不管他 * return 0; * } * public void writeToParcel(Parcel out, int flags) {//序列化 :out写入参数,要注明参数类型 flag一般默认是0,1代表对象需要返回,不回收 * out.writeInt(mData); * } * 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]; * } * }; * private MyParcelable(Parcel in) { * mData = in.readInt(); * } * }
google官方也是很贴心呀,直接把怎么用放在源码的注释里了
优点:
缺点:
package java.io; // Android-added: Notes about serialVersionUID, using serialization judiciously, JSON. public interface Serializable { }
Serializable 是一个空接口,用来标识当前类可以被 ObjectOutputStream序列化,以及被ObjectInputStream反序列化
总结:
个人小建议:
尽管Parcelable实现起来比较复杂,但是如果我们想要成为一名优秀的Android软件工程师,那么我们就需要勤快一些去实现Parcelable,而不是偷懒与实现Serializable,当然实现Serializable也可以