Java 序列化接口Serializable详解
2024-08-29 10:09:02
一个对象序列化的接口,一个类只有实现了Serializable搜索接口,它的对象才是可序列化的。因此如果要序列化某些类的对象,这些类就必须实现Serializable接口。而实际上,Serializable是一个空接口,没有什么具体内容,它的目的只是简单的标识一个类的对象可以被序列化。
什么情况下需要序列化?
a)当你想把的内存中的对象写入到硬盘的时候; b)当你想用套接字在网络上传送对象的时候; c)当你想通过RMI传输对象的时候;
具体解释:
a)比如说你的内存不够用了,那计算机就要将内存里面的一部分对象暂时的保存到硬盘中,等到要用的时候再读入到内存中,硬盘的那部分存储空间就是所谓的虚拟内存。在比如过你要将某个特定的对象保存到文件中,我隔几天在把它拿出来用,那么这时候就要实现Serializable接口;
b)在进行java的Socket编程的时候,你有时候可能要传输某一类的对象,那么也就要实现Serializable接口;最常见的你传输一个字符串,它是JDK里面的类,也实现了Serializable接口,所以可以在网络上传输。
c)如果要通过远程的方法调用(RMI)去调用一个远程对象的方法,如在计算机A中调用另一台计算机B的对象的方法,那么你需要通过JNDI服务获取计算机B目标对象的引用,将对象从B传送到A,就需要实现序列化接口。
最新文章
- php mysqli mysqli_query() mysqli_real_query()
- 拼sql条件时判断 是不是当前时间是不是周五,如果今天不是周五,就选上周五
- Static Constructors
- 基于Node的PetShop,RESTful API以及认证
- PowerShell 语法结构
- nyoj_83:迷宫寻宝(二)(计算几何)
- 一些JavaScript技巧
- CSS学习笔记(一):定位与溢出
- jQuery插件之----缓冲运动
- GameFreamWork框架----事件系统的应用
- yuan 老师 之 Django
- Ubuntu 16.04 总出现红色圆圈警告和检测到系统程序出现问题
- 【DevExpress】邮箱制作小结
- url编码乱码问题解决
- web前端(10)—— 浮动,清除默认样式
- json.dumps与json.dump的区别 json.loads与json.load的区别
- docker报错
- 通过HPS控制FPGA的GPIO
- Mac OS X上安装配置apache服务器
- IntelliJ IDEA 阿里巴巴编码插件