我不知道这个字段是用来干啥的,有人解释一下吗 10C

图片说明

我想问问各位大佬,我做的这个项目有好多类都有这样的final修饰的long类型

我不知道这个是用来干啥的,有人解释一下吗

0

4个回答

因为你实现了 java.io.Serializable 接口, 该接口需要一个serialVersionUID。 这个是序列化版本编号, 在整个项目中具有唯一性。

可以看看我下面提供的官方文档

Interface Serializable中, 提到

图片说明

对应的中文

序列化运行时使用一个称为 serialVersionUID 的版本号与每个可序列化类相关联,该序列号在反序列化过程中用于验证序列化对象的发送者和接收者是否为该对象加载了与序列化兼容的类。如果接收者加载的该对象的类的 serialVersionUID 与对应的发送者的类的版本号不同,则反序列化将会导致 InvalidClassException。可序列化类可以通过声明名为 "serialVersionUID" 的字段(该字段必须是静态 (static)、最终 (final) 的 long 型字段)显式声明其自己的 serialVersionUID:

ANY-ACCESS-MODIFIER static final long serialVersionUID = 42L;

如果可序列化类未显式声明 serialVersionUID,则序列化运行时将基于该类的各个方面计算该类的默认 serialVersionUID 值,如“Java(TM) 对象序列化规范”中所述。不过, 强烈建议 所有可序列化类都显式声明 serialVersionUID 值,原因是计算默认的 serialVersionUID 对类的详细信息具有较高的敏感性,根据编译器实现的不同可能千差万别,这样在反序列化过程中可能会导致意外的 InvalidClassException。因此,为保证 serialVersionUID 值跨不同 java 编译器实现的一致性,序列化类必须声明一个明确的 serialVersionUID 值。还强烈建议使用 private 修饰符显示声明 serialVersionUID(如果可能),原因是这种声明仅应用于直接声明类 -- serialVersionUID 字段作为继承成员没有用处。数组类不能声明一个明确的 serialVersionUID,因此它们总是具有默认的计算值,但是数组类没有匹配 serialVersionUID 值的要求。


也就是说, 只有有了这个 serialVersionUID(如果我们没有显示的声明, 则会通过类的组成来计算得到, 但是这样就会很敏感, 因为如果你的类有一点点变化, 都会导致该值发生变化), 我们才可以进行序列化和反序列化。 在进行反序列化时, 会使用该 serialVersionUID 来查找相应的类。 找不到就无法进行, 会报错。

其实编写序列化的类需要有些讲究的, 在此就不展开了

为什么大家看到好的答案都不点赞呢?

1

你百度一下java序列化就知道了。

0

这个就是序列化用到的。让实现了这个抽象方法的类,在序列化时区别于其他的类,特别是不同包同名的类。
1.在分布式系统中,此时需要把对象在网络上传输,就得把对象数据转换为二进制形式,需要共享的数据的 JavaBean 对象,都得做序列化。
2.服务器钝化:如果服务器发现某些对象好久没活动了,那么服务器就会把这些内存中的对象持久化在本地磁盘文件中(Java对象转换为二进制文件);如果服务器发现某些对象需要活动时,先去内存中寻找,找不到再去磁盘文件中反序列化我们的对象数据,恢复成 Java 对象。这样能节省服务器内存。

0
0
Csdn user default icon
上传中...
上传图片
插入图片
抄袭、复制答案,以达到刷声望分或其他目的的行为,在CSDN问答是严格禁止的,一经发现立刻封号。是时候展现真正的技术了!
其他相关推荐
火狐浏览器
这个版本有谁有,有人喜欢吗?这个版本对我个人来说是比较好的,不知道大家意见如何?
我也不知道什么是"莫比乌斯反演"和"杜教筛"
Part0 最近一直在搞这些东西 做了将近20道题目吧 也算是有感而发 写点东西记录一下自己的感受 如果您真的想学会莫比乌斯反演和杜教筛,请拿出纸笔,每个式子都自己好好的推一遍,理解清楚每一步是怎么来的,并且自己好好思考。 Part1莫比乌斯反演 莫比乌斯反演啥都没有,就只有两个式子(一般只用一个) 原来我已经写过一次了,再在这里写一次 就只写常用的那个吧 基本的公式 ...
webservice到底是什么
webservice到底是什么简单答一下: 1.web service本身不能做太多事,各种功能都是你自己编程实现的,但是你的程序只能自己用,自己看,别人根本不知道你的程序是什么样的。而web service就是规定了一种方式,告诉你将你的程序如何的部署到服务器上,然后大家通过一种协商好的地址能找到你的程序的说明,说明的格式也是大家都协商好的,所以可以读懂……然后你就可以根据那个地址来调用这个程序的
SpringMVC是什么?
一,首先是一个MVC框架。 在web模型中,MVC是一种很流行的框架,通过把Model,View,Controller分离,把较为复杂的web应用分成逻辑清晰的几部分,是为了简化开发,减少出错。还是为了组内开发人员之间的配合。总之就是一种分层工作的办法。   二,springMVC,是spring的一个子框架,当然拥有spring的特性,如依赖注入。 三,springMVC
eclipse/Myeclipse下可视化插件下载的安装问题详解
很多人不知道在哪里下载eclipse可视化插件,也有人下载了不知道怎么安装,还有人不会myeclipse下的可视化安装,因此这里详细解释一下
保留字段用来干啥?
许多结构里都有这个,不知?rn详细一点,谢谢
Cisco Packet Tracer 6.0.rar
Cisco Packet Tracer 6.0.rar,,,自行百度,我也不知道干啥的
使用sass需要干的事
1.使用npm安装node-sass会失败 还是使用cnpm (需要安装sass-loader 和 node-sass) npm install sass-loader --save-dev npm install node-sass --save-dev(一般都会装不上) 安装cnpm: npm install -g cnpm --registry=https://reg
hashcode是用来干吗的
java的Object类中有一方法hashcode返回int类型public native int hashCode();  而且其实现是native方法。hashCode方法的主要作用是为了配合基于散列的集合一起正常运行,这样的散列集合包括HashSet、HashMap以及HashTable。考虑一种情况,当向集合中插入对象时,如何判别在集合中是否已经存在该对象了?(注意:集合中不允许重复的元素...
visual assist 1647(with xx)
如果不知道是干啥的,也就不用知道了
Maven是什么?有什么用?
Maven是什么? Maven是Apache基金组织的一个开源项目,它是一个软件项目管理和综合工具。 Maven有什么用? Maven提供一个完整生命周期的框架。既有基础工具的建设,也有标准的目录结构和完整的生命周期,因而可以省去很多时间去配置开发环境。 Maven简化和标准化开发项目建设的流程。处理编译,分配,文档,团队协作和其他任务的无缝连接,而且增加了项目的重用性。 Maven提供PO...
[Java]serialVersionUID是干什么用的?(一)
听大侠们说,偶尔看看Java源码,可以提升编程功力,赶紧屁颠屁颠下载了一份。先研究哪个类好呢?平常用最多的类就是字符串操作了,先看String类吧。上来就被这行代码吸引住了:private static final long serialVersionUID = -6849794470754667710L;其实这是句很普通的语句,就是定义一个序列号。Java源码里有大量的类都有这么一个序列号,但是这
KMP算法到底在干什么
在写这篇文章之前参考了两篇文章,觉得写得很好,尤其是阮一峰写的KMP算法。 KMP算法的关键是它的next数组,利用next数组能够高效地确定在当前失配的情况下,应当将模式串移动多少位才能够避免不必要的匹配。不必要的匹配 如图,如果当前目标串与模式串在D处发生失配,传统方法是从模式串的开头位置重新移动,直到开头位置能够找到匹配的字符然后重新开始下一个匹配流程。但我们注意到在D发生失配之前的AB是
github 这个网站到底是干嘛用的?
github 这个网站到底是干嘛用的? 好像很强大的样子 开发者提交自己的代码,大家可以共享工作成果,比较出名的开源软件都会在上面发布自己的代码。类似的还有sourceforge(SourceForge 是全球最大开源软件开发平台和仓库,网站建立的宗旨,就是为开源软件提供一个存储、协作和发布的平台。SourceForge 上拥有大量非常优秀的开源软件)。对普通开发者而言,那个基本
docker-compose是干什么的?
http://www.linuxidc.com/Linux/2015-07/120061.htm Docker registry 工具现在已经很好的支持了 mirror 功能,使用它可以配置一个本地的 mirror 服务,将 pull 过的镜像 cache 在本地,这样其它主机再次 pull 的时候会极大提高响应速度。
Hadoop是什么,能干什么,怎么使用
本文档实现目标 希望用比较容易理解的语言解释Hadoop是个什么样的工具,尽量不涉及技术细节。 Hadoop是什么,能干什么,怎么使用 1、Hadoop是什么 1.1、小故事版本的解释 小明接到一个任务:计算一个100M的文本文件中的单词的个数,这个文本文件有若干行,每行有若干个单词,每行的单词与单词之间都是以空格键分开的。对于处理这种100M量级数据的计算任务,小明感觉很轻松。他首先把...
域名能用来干什么?为什么有人愿意花这么多钱买域名?
据相关数据显示,近期注册域名甚至域名交易的数据明显上扬。新闻里也时常爆出有人花高价购买域名等相关消息。那么为什么要买域名?域名能用来做什么?域名有什么用途?相信这也是很多人想知道的信息。 其实域名最广泛的用途是用来建站,不管是博客也好,还是网站也好,域名都是搭建这些终端的必要条件之一。所以想建站的朋友们基本都会注册一个自己需要的域名。 还有的人购买域名,完全是处于自己的喜好,比如想拥有跟自己名...
这个函数格式是?有人解释一下吗?
StringReader::StringReader ( const TCHAR* value, const size_t length, const bool deletevalue ):rn data(value),rn len(length),rn delVal(deletevalue)rn rnrn pt = 0;rn
xml是啥?是干啥用的?
————————————初识—————————————— 是什么? XML,Extensible Markup Language,扩展性标识语言。文件的后缀名为:.xml 据说,java是一门专业操作XML的语言。 是干啥用的? 为了便于不同应用、不同平台之间的数据共享和通信。   具体点的作用为: (1)可作为一种简单的数据库,存储并检索数据; (2)传输约定格式的文件;
maven能帮我们做什么
maven
docker是啥?是干什么的?
what? 定义 我们知道,软件依赖的环境大致包括: • 配置文件 • 代码 • tomcat • JDK • 操作系统 Docker作为一个软件集装箱化平台,可以让开发者构建应用程序时,将它与其依赖环境一起打包到一个容器中,然后很容易地发布和应用到任意平台中。 思想: 集装箱 标准化 隔离 核心 docker有3大核心:镜像、容器、仓库。 鲸鱼是操作系统。 要交付的应用程序是各种货物,...
visual assist x 1649 with crack
如果不知道是干啥的,也就不用知道了. 帶Crack
随笔——情话合集(持续更新)
问: 你想干什么?   答: 我想陪你一起看电视,陪你看恐怖的电影,陪你看感人的电影,你害怕了帮你遮眼睛;你流眼泪了给你递纸巾,把肩膀给你靠;万一要是不小心生气了,就凑过去把胳膊给你掐。然后拍拍你的头,轻轻说一声“ 乖~不生气了,我们去吃好吃的吧~”    问: 你喜欢我什么?   答: 喜欢你不好意思但是又主动来找我聊天的感觉,仿佛一个小姑娘低着头,摆弄着手指头过来找我要糖的既视感。温馨到批爆。...
Postman是什么?
今天给大家分享一款工具,好的工具能够让开发更高效,有时能成倍地提高。Postman是个什么东东呢?Postman的官网上这么介绍它:“Modern software is built on APIs,Postman helps you develop APIs faster”,看得出来,它是一个专门测试 API 的工具,如果你正在进行 API 相关的开发,那这篇文章就是你的福利! Postman...
看看jenkins都干了哪些活
Uploaded: http://maven.yonyou.com/nexus/content/repositories/nccloud-stagings/com/yonyou/yuncai/angang/yuncai-angang-project-service/1.0.0-ag-RELEASE/yuncai-angang-project-service-1.0.0-ag-RELEASE-so...
EL354中文资料
EL354中文资料自己看着办,有用的话下载就好.我也不知道这玩意干啥的
STM8S003F3-数据手册
我也不知道这玩意干啥用的,希望对你们有用,然后写这些内容是凑字数的.
classpath是什么,classpath用来做什么
classpath用来做什么 What’s a CLASSPATH ?This environment variable is used by the operating system to find library classes. Java uses these at compile time to locate the *.class files.是一个环境变量被操作系统用于寻找class类库
ASM汇编源码大全(某盗版光盘里找到的)
很多很多汇编源码,虽然我不知道都是干啥的,但绝对经典……
XML能用来干什么
XML能用来干什么 1、XML可以用来存储数据 XML是存储数据的良好方式,数据存储在XML中有一下好处:由于XML的数据常带有描述,所以数据信息更为丰富,而且XML数据的格式是良好规定的,这样就保证了各数据之间的格式一致性。 2、XML可以用来交换数据 XML的数据是与平台和编程语言无关的,所以采用这种格式就能在交换数据的时候提高移植性。比...
最爱张爱玲 :在这个世界上,总有一个人是等着你的!
I want you to know that there will always be someone waiting for you, no matter when and no matter where. You should know there will be such a person. 我要你知道, 在这个世界上总有一个人是等着你的, 不管在什么时候,什么地方, 反正你知道, 总有这...
Ubuntu LINUX从入门到精通
安装完Ubuntu不知道干啥的来看看吧!
github是什么,有什么用
写在前面:关于github的文章我已经写了两篇了,关于github个人网站搭建和上传的内容,这篇是对前两篇的一个总结,这里也会讲一些背景知识,和常见问题之类的相关内容。 github是什么: 嗯。。。有什么奇怪的东西乱入了,画风有点不对 实际上,这个问题在github的网站首页说的很清楚了。 1.github是一个基于git的web 协作社区,它有多种机
吴刚老师系列设计视频课程结构学习导图
吴刚老师系列设计视频学习的介绍,不知道要不要学?不知道怎么学?不知道课都是干啥的?不知道学完有什么用?看这个!
Docker是干什么的
Docker是什么? 官方:Docker是一个开源的应用容器引擎,基于Go语言并遵从Apache2.0协议开源。 用来干什么的? 它可以让开发者打包他们的应用以及依赖包到一个轻量级、可移植的容器中,然后发布到任何流行的Linux机器上,也可以实现虚拟化。   一张思维导图奉上:      小编的理解:它是用来把你的程序在linux系统中打包起来,然后使你的程序和其他程序...
BP神经网络能做什么?
来自神经网络之家 www.nnetinfo.com 作者:xiaoH   日期:2015-07-16 09:37:56.0 神经网络在各个领域都有应用,主要看使用者如何发挥,从什么角度去发挥。这里是一个例子,有助于大家了解神经网络的基本应用。    问题: 已知系统A有一个输出y,它受输入x1和x2的影响。当知道x1和x2的值时,求y的值。       由于不知道系统的内部构造关系,
什么是WebSocket?
什么是WebSocket? WebSocket是一种网络通信协议,很多高级功能都需要它。 那么我们有了HTTP协议,为啥还需要另外一个协议呢?答案很简单,因为HTTP协议有一个缺陷:通信只能由客户端发起。 最典型的场景就是聊天室,假如用HTTP协议的话,就只能去轮询获取服务端有没有消息了,而用WebSocket的话,服务端有新消息可以自动推送。 WebSocket协议在
神经网络究竟干了一件什么事?
今天我们来讨论当下最热门的神经网络,现在深度学习炒的非常火,其实本质还是把神经网络算法进行了延伸和优化!咱们这回的目标就直入主题用最简单的语言让大家清楚神经网络究竟是个什么东西。关于神经网络与人工智能的发展,以及神经网络各种生物学模型咱们就不唠了,我是觉得把神经网络比作各种类人脑模型和生物学模型没有半点助于咱们理解,反而把简单的问题复杂了,这些恩怨情仇咱们就不过多介绍了!这张图就是我们的核心了,也是
新娘和新郞
三对情侣参加婚礼,三个新郞为 A、B、C,三个新娘为 X、Y、Z。有人不知道谁和 谁结婚,于是询问了六位新人中的三位,但听到的回答是这样的:A 说他将和 X 结婚; X 说她的未婚夫是 C;C 说他将和 Z 结婚。这人听后知道他们在开玩笑,全是假话。请 编程找出谁将和谁结婚 思路:        因为xyz是连续的字符,将abc从x到z穷举,满足条件的且结果都不能相同的即是答案 代
php能够干什么
1.收集表单数据:     关于这一点,表单是编程常用的数据输入界面。表单提交时通常使用get或者post两种方法将数据发送给php程序脚本进行处理。 2.生成动态网页:     php运行在服务端,可以通过用户在客户端不同的请求,运行不同的脚本后,动态输出用户请求内容。简言,客户端-请求-->php服务端-运行输出-->客户端,这个过程客户端看不到php程序