为什么要实现Serializable接口?

首先来说Serializable是什么东西?

Serializable:Serializable接口是启用其序列化功能的接口。实现java.io.Serializable 接口的类是可序列化的。没有实现此接口的类将不能使它们的任意状态被 序列化或逆序列化。


一般来说,Serializable适用于Mybatis中的,Mybatis是持久层框架,与数据库进行交互所用。
什么叫做序例化?

序列化 (Serialization)是将对象的状态信息转换为可以存储或传输的形式的过程。在序列化期间,对象将其当前状态写入到临时或持久性存储区。以后,可以通过从存储区中读取或反序列化对象的状态,重新创建该对象。

实现序例化的原因:

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

实现serializabel接口的作用:

可以把对象存到字节流,然后可以恢复,如果你的对象没实现序列化,很难进行持久化和网络传输,要持久化和网络传输就得转为字节流,所以在分布式应用中及设计数据持久化的场景中,你就得实现序列化。

所谓的Serializable,就是java提供的通用数据保存和读取的接口。至于从什么地方读出来和保存到哪里去都被隐藏在函数参数的背后了。这样子,任何类型只要实现了Serializable接口,就可以被保存到文件中,或者作为数据流通过网络发送到别的地方。也可以用管道来传输到系统的其他程序中。这样子极大的简化了类的设计。只要设计一个保存一个读取功能就能解决上面说得所有问题。

你可能感兴趣的:(java)