您的位置:首页 > 移动开发 > Android开发

Android学习笔记之Serializable和Parcelable的区别

2016-02-15 08:13 567 查看
以前在做序列化传输数据的时候,用的都是实现Serializable接口,昨天刚刚发现Parcelable的用法,了解在Android中建议使用后者,因为后者的效率更高,下面是一些简单的用法,作为笔记,以备自己的不时之需。

需要传输的类定义如下:

package cn.bing.com.activity_app;

import android.os.Parcel;
import android.os.Parcelable;

import java.io.Serializable;

/**
* Created by flymars.sun on 2016/2/14.
*/
public class Student implements Parcelable {
private String name;
private int age;

public Student(int age, String name) {
this.age = age;
this.name = name;
}

public String getName() {
return name;
}

public void setName(String name) {
this.name = name;
}

public int getAge() {
return age;
}

public void setAge(int age) {
this.age = age;
}

//需要覆写的方法
@Override
public int describeContents() {
return 0;
}

//需要覆写的方法
@Override
public void writeToParcel(Parcel dest, int flags) {
//根据该类中定义的属性决定
dest.writeString(getName());
dest.writeInt(getAge());
}

public static final Creator<Student> CREATOR = new Creator<Student>() {
@Override
public Student createFromParcel(Parcel source) {
return new Student(source.readInt(),source.readString());
}

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

}

其他的情况根据上面扩展即可。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  序列化 Android