在线客服
扫描二维码
下载博学谷APP扫描二维码
关注博学谷微信公众号
什么是 java 序列化?如何实现 java 序列化?或者请解释 Serializable 接口的作用?我们有时候将一个 java 对象变成字节流的形式传出去或者从一个字节流中恢复成一个 java 对象,例如,要将 java 对象存储到硬盘或者传送给网络上的其他计算机,这个过程我们可以自己写代码去把一个 java 对象变成某个格式的字节流再传输。
但是,jre 本身就提供了这种支持,我们可以调用 OutputStream的 writeObject 方法来做,如果要让 java 帮我们做,要被传输的对象必须实现 serializable 接口,这样,javac 编译时就会进行特殊处理,编译的类才可以被 writeObject 方法操作,这就是所谓的序列化。
需要被序列化的类必须实现 Serializable 接口,该接口是一个 mini 接口,其中没有需要实现的方法,implements Serializable 只是为了标注该对象是可被序列化的。
例如,在 web 开发中,如果对象被保存在了 Session 中,tomcat 在重启时要把 Session 对象序列化到硬盘,这个对象就必须实现 Serializable 接口。如果对象要经过分布式系统进行网络传输或通过 rmi 等远程调用,这就需要在网络上传输对象,被传输的对象就必须实现 Serializable 接口。
— 申请免费试学名额 —
在职想转行提升,担心学不会?根据个人情况规划学习路线,闯关式自适应学习模式保证学习效果
讲师一对一辅导,在线答疑解惑,指导就业!
相关推荐 更多
Java入门基础学习之流概念
今天我们来梳理一下Java入门基础知识——流。本文将从流的定义、分类、标准的输入/输出流以及I/O流按类型分类四部分来介绍,让大家全面系统的了解流概念。感兴趣的同学就赶紧看下去吧!
3699
2019-08-14 17:51:40
自学Java可以找到工作吗?要学到什么程度?
Java作为备受程序员喜爱的编程语言,在各行各业都被广泛使用,导致当下越来越来多的自学者想通过自己的努力,自学Java从而找到一份高薪可以改变自己职业前途的工作。那么自学Java可以找到工作吗?要学到什么程度?其实对大多数学习者来说,自学Java都不是一个最好的选择,一方面是因为Java语言自身学习的难度比较高,另一方面是自学效率低,对自学者能力要求高。
4957
2019-10-26 11:33:24
浅谈学习Java需要有哪些基础?
浅谈学习Java需要有哪些基础?对于一个没有接触过编程语言的人来说,一点学习经验都没有,突然想要学习一门Java语言来作为自己的生存技能,就会问学习Java需要具有哪些基础?该如何学习呢?
3901
2020-02-14 17:46:12
Java标准注解学习总结
Java主要提供了5个标准注解,分别是:Override、Deprecated、SuppressWarnings、SafeVarargs和FunctionalInterface。本文将从“如何使用这5个标准注解”,还有编译器在编译时:“如何处理它们”来讲述。一起来看Java标准注解的学习总结吧!
2798
2020-08-07 10:59:23
Docker容器引擎实现原理及其应用
Docker是一个开放源代码软件项目能让应用程序布署在软件容器下的工作可以自动化进行。Docker建议单个容器只运行一个应用程序或进程,形成了一个分布式的应用程序模型,在这种模型下应用程序或者服务都可以表示为一系列内部互联的容器,从而使分布式部署应用程序,扩展或调试应用程序都变得比较简单,同时也提高了程序的内省性。
3005
2021-04-26 11:27:08