- Parcelable和Serializable 都是为了对象的序列化,需这篇文章简单介绍了序列化,不明白的同学可以去看一下~:
通途:Serializable是为了保存对象的属性到本地文件、数据库、网络流、rmi以方便数据传输;而Parcelable为了在程序内不同组件间以及不同Android程序间(AIDL)高效的传输数据而设计,这些数据仅在内存中存在。
- 性能:Parcelable 要比Serializable开销要小。
写一段代码介绍一下 Pracelable,自己看注释哦。
package cn.geckhan.mydemos.infos;
import android.os.Parcel;
import android.os.Parcelable;
/**
* Created by geckhan on 15/9/19.
*/
public class MyPracelable implements Parcelable {
//构造方法 读取数据进行数据恢复
protected MyPracelable(Parcel in) {
// in.readInt();
}
// 用来创建自定义的Parcelable的对象
public static final Creator<MyPracelable> CREATOR = new Creator<MyPracelable>() {
@Override
public MyPracelable createFromParcel(Parcel in) {
return new MyPracelable(in);
}
@Override
public MyPracelable[] newArray(int size) {
return new MyPracelable[size];
}
};
// 系统默认生成
@Override
public int describeContents() {
return 0;
}
// 写入数据,并且保存
@Override
public void writeToParcel(Parcel dest, int flags) {
}
}