Serializable解析
Serializable接口是一个空接口,目的是为了标示一个类可以被序列化,
没有实现此接口的类将不能使它们的任意状态被序列化或反序列化。
那么到底什么是序列化?
简单来说所谓序列化就是将一个对象状态转化为可存储形式(字节流),然后保存在磁盘文件中,或者可以通过网络发送到其他任何程序 ,从字节流创建对象的相反过程就是反序列化。
如何使一个类可序列化?
**实现java.io.Serializable这个空接口
适用场景
1.需要将内存对象写入硬盘中
例子:当一个JavaBean在构造工具内被用户化,并与其它Bean建立连接之后,它的所有状态都应当可被保存,下一次被load进构造工具内或在运行时,就应当是上一次修改完的信息。为了能做到这一点,要把Bean的某些字段的信息保存下来,在定义Bean时要使它实现Java.io.Serializable接口
2.可用来做抽取类中变量的类型
例子:
要知道java的包装类型 (Integer,Long,String,Double…)几乎都实现了这个接口。
所有以Serializable接口为类型的变量,完全可以在传值的时候传入我们所需要的类型。
再谈谈Transient关键字
transient关键字只能用于变量,意思是忽略这个字段,也就是说声明为transient字段的关键字不会序列化
而声明为static关键字的变量根本不是对象的一部分,所以为声明static关键字的变量,再为它添加transient关键字毫无意义。
接着声明为final关键字的变量将直接通过值参与序列化,所以为声明为final关键字的的变量再添加transient将不会产生影响。
Serializable解析相关推荐
- 哔哩哔哩2020校园招聘后端笔试卷(一)
1. 在Java中下面哪个对类的声明是错误的?(C) A. public class MyClass{} B. class MyClass extends MySuperClass implement ...
- Android序列化经典解析(三)-拨乱反正,堪比窦娥的Serializable
关于网上很多博客提到Parcelable比Serializable快,原因大致有两种说法: Serializable基于反射来做的 Serializable基于磁盘进行序列化,而Parcel基于内存 ...
- Serializable官方实例解析02-将序列化与自定义数据格式结合使用
官方地址:Using Serialization with a Custom Data Format 将序列化与自定义数据格式结合使用 1. 介绍 演示如何使用 writeObject 和 rea ...
- 100 行代码透彻解析 RPC 原理
欢迎关注方志朋的博客,回复"666"获面试宝典 文章来源:https://sourl.cn/HpZHvy 引 言 本文主要论述的是"RPC 实现原理",那么首先 ...
- Spring解析,加载及实例化Bean的顺序(零配置)
点击上方蓝色"方志朋",选择"设为星标"回复"666"获取独家整理的学习资料! 作者:jb_hz blog.csdn.net/qq_2752 ...
- Java集合---LinkedList源码解析
一.源码解析 1. LinkedList类定义 2.LinkedList数据结构原理 3.私有属性 4.构造方法 5.元素添加add()及原理 6.删除数据remove() 7.数据获取get() 8 ...
- fegin调用为什么要序列化_全方位解析Java的序列化
前言 相信大家日常开发中,经常看到Java对象"implements Serializable".那么,它到底有什么用呢?本文从以下几个角度来解析序列这一块知识点~ 什么是Java ...
- java treeset原理_Java集合 --- TreeSet底层实现和原理(源码解析)
概述 文章的内容基于JDK1.7进行分析,之所以选用这个版本,是因为1.8的有些类做了改动,增加了阅读的难度,虽然是1.7,但是对于1.8做了重大改动的内容,文章也会进行说明. TreeSet实现了S ...
- 深入解析Spring架构与设计原理-AOP
2019独角兽企业重金招聘Python工程师标准>>> 关于AOP的个人理解 AOP联盟定义的AOP体系结构把与AOP相关的概念大致分为了由高到低.从使用到实现的三个层次.关于这个体 ...
最新文章
- python 把2个列表或者2个元组转成字典
- AngularJS2.0 教程系列(一)
- matlab中prismastic,魅力值是什么意思
- vba thisworkbook 切换表 执行 速度慢_带你初探VBA事件的大门—工作簿事件
- springboot获取URL请求参数的几种方法
- 无法读取内存属于错误吗_深入了解 JavaScript 内存泄露
- 第六讲 使用第三方库及简单网页
- zabbix-server-mysql安装_zabbix server 安装部署
- 酷动网博客整站源码+Panda PRO主题+7000条完整数据
- day30 java的IO流(3)
- linux----------今天又遇到一个奇葩的问题,就是linux文件的权限已经是777了但是还是没有写入权限,按照下面的命令就解决了
- 启用和禁止Oracle的dbms_job
- [HDFS Manual] CH1 HDFS体系结构
- LINQ to SQL语句 收藏系列
- 串级调节系统参数整定方法(串级调节器参数整定)
- 北大青鸟php培训怎么样,北大青鸟php培训怎么样
- dnf手游登录不显示服务器,不要着急 DNF手游提示登录失败error7正确解决方法
- 手把手教你扩展个人微信号(2)
- php会议签到签退系统,会议签到管理系统,无障碍会议签到系统,一卡通会议签到系统,会议签到系统 - 新开普(NewCapec)...
- vue中如何实现换肤?