手记

通过 Intent 传递对象

一.什么是序列化

将一个对象转换成可储存或者可传输的状态, 对象在进行序列化后就可以通过 Intent 来进行活动之间的传递

二.Parcelable

Parcelable 的序列化原理是将一个对象进行分解,而分解出来的每一部分都是 Intent 可传递的对象,因此也就实现了传递对象的功能

三.与 Serializable的区别

性能开销小,效率高

四.如何序列化
public class Book implements Parcelable {
    public String title;
    public float price;

    @Override
    public int describeContents() {
        return 0;
    }

    @Override
    public void writeToParcel(Parcel dest, int flags) {
        dest.writeString(this.title);
        dest.writeFloat(this.price);
    }

    public Book() {
    }

    protected Book(Parcel in) {
        this.title = in.readString();
        this.price = in.readFloat();
    }

    public static final Parcelable.Creator<Book> CREATOR = new Parcelable.Creator<Book>() {
        @Override
        public Book createFromParcel(Parcel source) {
            return new Book(source);
        }

        @Override
        public Book[] newArray(int size) {
            return new Book[size];
        }
    };
}

快速生成的序列化的方法

0人推荐
随时随地看视频
慕课网APP