Java应用程序中有Serializable来实现序列化操作,Android中有Parcelable来实现序列化操作

测试下Parcelable的效率会达到Serializable的十倍以上!

首先Parcelable的性能要强于Serializable的原因我需要简单的阐述一下

  1). 在内存的使用中,前者在性能方面要强于后者

  2). 后者在序列化操作的时候会产生大量的临时变量,(原因是使用了反射机制)从而导致GC的频繁调用,因此在性能上会稍微逊色

  3). Parcelable是以Ibinder作为信息载体的.在内存上的开销比较小,因此在内存之间进行数据传递的时候,Android推荐使用Parcelable,既然是内存方面比价有优势,那么自然就要优先选择.

  4). 在读写数据的时候,Parcelable是在内存中直接进行读写,而Serializable是通过使用IO流的形式将数据读写入在硬盘上.

  但是:虽然Parcelable的性能要强于Serializable,但是仍然有特殊的情况需要使用Serializable,而不去使用Parcelable,因为Parcelable无法将数据进行持久化,因此在将数据保存在磁盘的时候,仍然需要使用后者,因为前者无法很好的将数据进行持久化.(原因是在不同的Android版本当中,Parcelable可能会不同,因此数据的持久化方面仍然是使用Serializable)

https://www.cnblogs.com/yezhennan/p/5527506.html

更多相关文章

  1. Android(安卓)使用ORMLite打造万能泛型Dao简化数据持久化层
  2. Android中所有API和对应权限的数据结构构建
  3. 如何查看Android里面其他应用的数据
  4. android登录tomcat服务器并查找数据库的内容
  5. android 内存和性能优化汇总
  6. android MVP架构学习
  7. Android中智能控件AutoCompleteTextView
  8. 【Android】Android性能测试之MAT的使用
  9. 05_Content Provider

随机推荐

  1. Understanding the takePicture in Andro
  2. Android(安卓)禁止 ListView 上下滑动
  3. 智能手机软件平台 Android(安卓)VS iPhon
  4. Android自由选择TextView的文字
  5. canvas.drawRoundRect方法,绘制圆角矩形
  6. Android动画效果 Android(安卓)Animation
  7. db文件查看工具SQLiteExpert
  8. Android(安卓)广播Action大全
  9. Android出现java.net.SocketException: P
  10. Android(安卓)Glide加载Gif