导读 您好,今天小花就为大家解答关于serializable和parcelable的区别,serializable相信很多小伙伴还不知道,现在让我们一起来看看吧!1、最重要

您好,今天小花就为大家解答关于serializable和parcelable的区别,serializable相信很多小伙伴还不知道,现在让我们一起来看看吧!

1、最重要的两个原因是:将对象的状态保存在存储媒体中以便可以在以后重新创建出完全相同的副本;2、按值将对象从一个应用程序域发送至另一个应用程序域。

2、实现serializable接口的作用是就是可以把对象存到字节流,然后可以恢复。

3、所以你想如果你的对象没实现序列化怎么才能进行网络传输呢,要网络传输就得转为字节流,所以在分布式应用中,你就得实现序列化,如果你不需要分布式应用,那就没那个必要实现序列化。

4、扩展资料:public interface Serializable类通过实现 java.io.Serializable 接口以启用其序列化功能。

5、未实现此接口的类将无法使其任何状态序列化或反序列化。

6、可序列化类的所有子类型本身都是可序列化的。

7、序列化接口没有方法或字段,仅用于标识可序列化的语义。

8、要允许不可序列化类的子类型序列化,可以假定该子类型负责保存和还原超类型的公用 (public)、受保护的 (protected) 和(如果可访问)包 (package) 字段的状态。

9、仅在子类型扩展的类(父类)有一个可访问的无参数构造方法来初始化该类的状态时,才可以假定子类型有此责任。

10、如果不是这种情况,则声明一个类为可序列化类是错误的。

11、该错误将在运行时检测到。

12、在反序列化过程中,将使用该类的公用或受保护的无参数构造方法初始化不可序列化类的字段。

13、可序列化的子类必须能够访问无参数的构造方法。

14、可序列化子类的字段将从该流中还原。

15、参考资料:百度百科-serializable接口。

本文就讲到这里,希望大家会喜欢。