安卓Parcel

安卓的Parcel机制是不同于Java的serialize机制的一种序列化机制,但是功能均是实现对象序列化。Parcel是一种轻量级对象序列化和反序列化机制,而且非常高效。Parcel可以在Activity之间传递复杂的对象。主要包含了几个函数:

1. Public void writeToParcel(Parcel dest, int flags){ dest.writeInt(color); }

2. Public int describeContents(){ return 0; }

创建Parcel对象:

public static final Parcelable.Creator CREATOR =

 new Parcelable.Creator(){ 

public MyColor createFromParcel(Parcel in){ 

return new MyColor(in);

 }

 public MyColor[] newArray(int size){ 

return new MyColor[size];

 }

};

安卓中进程间通信IPC也是用了Parcel这种交互机制。Parcel数据结构:

Parcel
mError: int
*mData: char
mDataSize: int
mDataCapacity: int
mDataPos: int
*mObjects: int
mObjectsSize: int
mObjectsCapacity: int
mNextObjectHint: int
mFdsKnown: bool
mHasFds: bool
mAllowFds: bool
*mOwnerCookie: void
 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值