serializable 接口的作用

来源:互联网 发布:mac系统支持steam吗 编辑:程序博客网 时间:2024/05/18 00:58

转载至:http://www.cnblogs.com/wzhBlog/archive/2013/04/10/3013193.html

一个对象序列化的接口,一个类只有实现了 Serializable 接口,它的对象才是可序列化的。因此如果要序列化某些类的对象,这些类就必须实现 Serializable 接口。而实际上, Serializable 是一个空接口,没有什么具体内容,它的目的只是简单的标识一个类的对象可以被序列化。

 

什么情况下需要序列化 ??

a)当你想把的内存中的对象写入到硬盘的时候;

b)当你想用套接字在网络上传送对象的时候;

c)当你想通过 RMI 传输对象的时候;

详细解释一下:

a) 比如说你的内存不够用了,那计算机就要将内存里面的一部分对象暂时的保存到硬盘中,等到要用的时候再读入到内存中,硬盘的那部分存储空间就是所谓的虚拟内存。在比如过你要将某个特定的对象保存到文件中,我隔几天在把它拿出来用,那么这时候就要实现 Serializable 接口;

b) 在进行 java 的 Socket 编程的时候,你有时候可能要传输某一类的对象,那么也就要实现 Serializable 接口;最常见的你传输一个字符串,它是 JDK 里面的类,也实现了 Serializable 接口,所以可以在网络上传输。

c) 如果要通过远程的方法调用(RMI)去调用一个远程对象的方法,如在计算机A中调用另一台计算机 B 的对象的方法,那么你需要通过 JNDI 服务获取计算机 B 目标对象的引用,将对象从 B 传送到 A ,就需要实现序列化接口。


0 0
原创粉丝点击