尽量不要实现序列化接口 为什么要实现序列化接口?
为什么要实现序列化接口?
首先,您应该弄清楚可解析接口的用途!为什么Android提供这个接口!只有知道原因,才能知道是否合适!这个界面在Android中的一个非常常见的用法是Aidl!目的是将数据传输到进程!此外,内存共享!例如,在intent中传递自定义对象时,还有一些方法可以实现接口!当然,intent还提供了传递可序列化接口的方法!这是Java序列化接口!与可解析相比,性能不如可解析!而序列化接口更适合持久化序列化保存在本地!因此,建议使用serializable、interface objectinputstream和objectoutputstream进行持久化!手机上的码字太累了
Java的“对象序列化”可以将实现可序列化接口的对象转换成一组字节,这样当你以后想使用这个对象时,就可以恢复字节数据并相应地重建对象。即使在跨网络环境中也是如此,这意味着序列化可以自动补偿操作系统中的差异。换句话说,您可以在windows机器上创建一个对象,序列化它,然后通过网络将它传输到UNIX机器,然后在那里重建它。您不必担心数据在不同平台上的表示方式、字节顺序或任何其他细节。
javaBean为什么要实现序列化Serializable接口?
原因很简单:
1、JSON是JavaScript本机支持,没有外部依赖项
2、JSON具有人眼可读性
3、开发人员懒惰
关于序列化协议和框架,估计可以创建一个百科全书,如:XML、JSON、bson、Hessian、,协议缓冲区…
有很多不受欢迎的,排名不分先后。
虽然有各种各样的协议和框架,但序列化本质上可以分为两种类型:
二进制协议的优点是体积小、效率高。例如,协议缓冲区可以用来将数据压缩成位,序列化和反序列化具有良好的性能,非常适合各种系统通信和接口调用。
但问题也在这里,二进制数据几乎没有可读性,所以在程序的开发和调试中,更让程序员痛苦,尤其是频繁变化的数据结构。
文本协议恰恰相反,数据量大,性能差,但能满足可读性要求。例如,我们可以很容易地理解JSON或人肉结构数据的一部分。对于快速开发和web开发来说,它可以提高开发效率,开发人员不必过于关注协议或框架,只关注业务。
我的观点如下:
1。对于业务稳定、性能要求高的场景,应该优先考虑协议缓冲区等二进制序列化协议
2。对于性能要求低、业务更改频繁的场景,应该优先考虑JSON和XML等文本协议
尽量不要实现序列化接口 实现序列化接口有什么用 为什么要实现序列化接口
版权声明:本文内容由互联网用户自发贡献,本站不承担相关法律责任.如有侵权/违法内容,本站将立刻删除。