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

什么情况下需要序列化?

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

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

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

具体解释:

a)比如说你的内存不够用了,那计算机就要将内存里面的一部分对象暂时的保存到硬盘中,等到要用的时候再读入到内存中,硬盘的那部分存储空间就是所谓的虚拟内存。在比如过你要将某个特定的对象保存到文件中,我隔几天在把它拿出来用,那么这时候就要实现Serializable接口;
b)在进行java的Socket编程的时候,你有时候可能要传输某一类的对象,那么也就要实现Serializable接口;最常见的你传输一个字符串,它是JDK里面的类,也实现了Serializable接口,所以可以在网络上传输。
c)如果要通过远程的方法调用(RMI)去调用一个远程对象的方法,如在计算机A中调用另一台计算机B的对象的方法,那么你需要通过JNDI服务获取计算机B目标对象的引用,将对象从B传送到A,就需要实现序列化接口。

最新文章

  1. php mysqli mysqli_query() mysqli_real_query()
  2. 拼sql条件时判断 是不是当前时间是不是周五,如果今天不是周五,就选上周五
  3. Static Constructors
  4. 基于Node的PetShop,RESTful API以及认证
  5. PowerShell 语法结构
  6. nyoj_83:迷宫寻宝(二)(计算几何)
  7. 一些JavaScript技巧
  8. CSS学习笔记(一):定位与溢出
  9. jQuery插件之----缓冲运动
  10. GameFreamWork框架----事件系统的应用
  11. yuan 老师 之 Django
  12. Ubuntu 16.04 总出现红色圆圈警告和检测到系统程序出现问题
  13. 【DevExpress】邮箱制作小结
  14. url编码乱码问题解决
  15. web前端(10)—— 浮动,清除默认样式
  16. json.dumps与json.dump的区别 json.loads与json.load的区别
  17. docker报错
  18. 通过HPS控制FPGA的GPIO
  19. Mac OS X上安装配置apache服务器
  20. IntelliJ IDEA 阿里巴巴编码插件

热门文章

  1. OpenDayLight Helium实验一 OpenDaylight的C/S模式实验
  2. GetLastError()数字_转换为_文字
  3. 用Python操作Named pipe命名管道,实用做法——os.read 或 os.write
  4. 【MySQL】经典数据库SQL语句编写练习题——SQL语句扫盲
  5. vue spn如何做seo优化
  6. 什么是API?我们常说调用API
  7. bzoj2325
  8. hdu1512
  9. 201621123006 《Java程序设计》第7周学习总结
  10. 第12课:HTML+CSS的基础用法