Serializable 和 Parcelable 区别

 序列化详细解释:

  将对象排列成一组字节序列然后进行存储的过程

 反序列化详细解释:

  将存储在内存或者硬盘的字节序列变成对象的过程

Java对象与Java对象序列化的区别

Java对象存在的前提必须在JVM运行期间存在,如果想在JVM非运行的情况下或者在其他机器JVM上获取指定Java对象,在现有Java对象的机制下都不可能完成。
与Java对象不同的是,如果对Java对象执行序列化操作,因为原理是把Java对象信息保存到存储媒介,所以可以在以上Java对象不可能存在的两种情况下依然可以使用Java对象

Serializable与Parcelable区别

两者最大的区别在于存储媒介的不同,Serializable使用IO读写存储在硬盘上,而Parcelable是直接在内存中读写,很明显内存的读写速度通常大于IO读写,所以在Android中通常优先选择Parcelable

Parcelable的性能比Serializable好,在内存开销方面较小,数组仅仅存在内存中,因为android不同版本Parcelable可能不同,所以不推荐使用Parcelable进行数据持久化

Serializable 将对象属性存储在硬盘或网络,数据库中。使数据持久化

 

相同点:

      序列化的这些操作完全都是由底层实现。

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值