很详细的android序列化过程Parcelable

很详细的android序列化过程Parcelable,第1张

概述直接上代码:注释都写的很清楚了。publicclassEntryimplementsParcelable{publicintuserID;

直接上代码:注释都写的很清楚了。

public class Entry implements Parcelable{public int userID;public String username;public boolean isMale;public Book book;//序列化对象可以嵌套序列化对象,前提是2个类的对象都被序列号过//几乎所有情况下都返回0,可以不管@OverrIDepublic int describeContents() {return 0;}//序列化对象,将对象写到序列号数据结构中//flags:大多数情况为0@OverrIDepublic voID writetoParcel(Parcel out,int flags) {out.writeInt(userID);out.writeString(username);out.writeInt(isMale ? 1:0);out.writeParcelable(book,0);// out.writeList(List);也可以序列号List和Map,前提是List和Map里面的数据都是可序列号的// out.writeMap(Map);}public Entry(int userID,String username,boolean isMale) {this.userID = userID;this.username = username;this.isMale = isMale;}//反序列化public static final Parcelable.Creator<Entry> CREATOR = new Creator<Entry>() {//创建指定长度的原始对象数组@OverrIDepublic Entry[] newArray(int size) {// Todo auto-generated method stubreturn new Entry[size];}//从序列号过后的对象中创建原始对象@OverrIDepublic Entry createFromParcel(Parcel source) {// Todo auto-generated method stubreturn new Entry(source);}};//从序列号后的对象中创建原始对象private Entry(Parcel in){userID = in.readInt();username = in.readString();isMale = in.readInt() == 1;in.readParcelable(Thread.currentThread().getContextClassLoader());}}

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持编程小技巧。

总结

以上是内存溢出为你收集整理的很详细的android序列化过程Parcelable全部内容,希望文章能够帮你解决很详细的android序列化过程Parcelable所遇到的程序开发问题。

如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。

欢迎分享,转载请注明来源:内存溢出

原文地址: https://outofmemory.cn/web/1148420.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-05-31
下一篇 2022-05-31

发表评论

登录后才能评论

评论列表(0条)

保存