ICode9

精准搜索请尝试: 精确搜索
首页 > 其他分享> 文章详细

Android开发揭秘!高级Android都应该知道!全网最新

2021-08-24 11:03:19  阅读:162  来源: 互联网

标签:Parcelable 全网 Serializable 传输数据 内存 Android 序列化 揭秘


开头

又到年底了,每到这个时候,我们都会慢慢反思,这一年都做了什么?有什么进步?年初的计划都实现了吗?明年年初有跳槽的底气了吗?况且今年的互联网环境太差,需要自己有足够的知识储备,才能够应对这凌冽的寒风。

本文主要是整理了中高级安卓需要会的(或者说面试被频繁问到的内容),主要作为参考大纲,之后会陆续更新每个详细部分,整理成为了一份完整的983页的PDF。供大家参考,互相学习。供大家参考,互相学习。

1、作用

Serializable的作用是为了保存对象的属性到本地文件、数据库、网络流、rmi以方
便数据传输,当然这种传输可以是程序内的也可以是两个程序间的。而Android的
Parcelable的设计初衷是因为Serializable效率过慢,为了在程序内不同组件间以及
不同Android程序间(AIDL)高效的传输数据而设计,这些数据仅在内存中存在,
Parcelable是通过IBinder通信的消息的载体。

从上面的设计上我们就可以看出优劣了

2、效率及选择

Parcelable的性能比Serializable好,在内存开销方面较小,所以在内存间数据传输
时推荐使用Parcelable,如activity间传输数据,而Serializable可将数据持久化方便
保存,所以在需要保存或网络传输数据时选择Serializable,因为android不同版本
Parcelable可能不同,所以不推荐使用Parcelable进行数据持久化。

3、编程实现

对于Serializable,类只需要实现Serializable接口,并提供一个序列化版本
id(serialVersionUID)即可。而Parcelable则需要实现writeToParcel
describeContents函数以及静态的CREATOR变量,实际上就是将如何打包和解包
的工作自己来定义,而序列化的这些操作完全由底层实现。

最后

Android学习是一条漫长的道路,我们要学习的东西不仅仅只有表面的 技术,还要深入底层,弄明白下面的 原理,只有这样,我们才能够提高自己的竞争力,在当今这个竞争激烈的世界里立足。

人生不可能一帆风顺,有高峰自然有低谷,要相信,那些打不倒我们的,终将使我们更强大,要做自己的摆渡人。

我把自己这段时间整理的Android最重要最热门的学习方向资料放在了我的Gitee,里面还有不同方向的自学编程路线、面试题集合/面经、及系列技术文章等。

资源持续更新中,欢迎大家一起学习和探讨。

标签:Parcelable,全网,Serializable,传输数据,内存,Android,序列化,揭秘
来源: https://www.cnblogs.com/xiaomojava/p/15179300.html

本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享;
2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关;
3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关;
4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除;
5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。

专注分享技术,共同学习,共同进步。侵权联系[81616952@qq.com]

Copyright (C)ICode9.com, All Rights Reserved.

ICode9版权所有