Android开发:Parcelable和Serializable序列化的区别

Android在Intent,Bundle传递数据时,都需要对象对应的类实现Parcelable或Serializable接口,即序列化。都是序列化,这两者有什么区别呢?
Serializable是Java定义的序列化接口,底层用反射实现,使用时io开销比较大,适用于将对象存储到文件或网络传输。
而Parcelable是Android定义的接口,使用起来相对复杂些,需要写一堆的方法(同是避免了使用反射),不过,在AndroidStudio里,可以用一个叫Android Parcelable code generator的小插件快速生成代码。
Parcelable的优势在于,效率高,在内存中传输时,建议使用Parcelable。有评测显示Parcelable性能比Serializable高十倍以上。

© 2016, 冰冻鱼. 请尊重作者劳动成果,复制转载保留本站链接! 应用开发笔记