关于serialVersionUID
- Why generate long serialVersionUID instead of a simple 1L?
http://stackoverflow.com/questions/888335/why-generate-long-serialversionuid-instead-of-a-simple-1l
As far as I can tell, that would be only for compatibility with previous releases. This would only be useful if you neglected to use a serialVersionUID before, and then made a change that you know should be compatible but which causes serialization to break.
- 结论:新建的类使用1L,如果是之前的类忘记加serialVersionUID,在新增字段之前,先生成serialVersionUID(不能是1L)
- 如果可序列化类未显式声明 serialVersionUID,则序列化运行时将基于该类的各个方面计算该类的默认 serialVersionUID 值,如“Java(TM) 对象序列化规范”中所述。不过,强烈建议所有可序列化类都显式声明 serialVersionUID 值,原因计算默认的 serialVersionUID 对类的详细信息具有较高的敏感性,根据编译器实现的不同可能千差万别,这样在反序列化过程中可能会导致意外的 InvalidClassException。
JVM
- Jvm类型:client,server。JVM有以下几种模式:-Xint, -Xcomp, 和 -Xmixed。从上图的输出结果中也可以看到,mixed是JVM的默认模式
jdk
- final、static、static final修饰的字段赋值的区别:
- static修饰的字段在类加载过程中的准备阶段被初始化为0或null等默认值,而后在初始化阶段(触发类构造器)才会被赋予代码中设定的值,如果没有设定值,那么它的值就为默认值。
- final修饰的字段在运行时被初始化(可以直接赋值,也可以在实例构造器中赋值),一旦赋值便不可更改;
- static final修饰的字段在Javac时生成ConstantValue属性,在类加载的准备阶段根据ConstantValue的值为该字段赋值,它没有默认值,必须显式地赋值,否则Javac时会报错。可以理解为在编译期即把结果放入了常量池中。
http://blog.csdn.net/ns_code/article/details/17675609
<script type="text/javascript">
$(function () {
$('pre.prettyprint code').each(function () {
var lines = $(this).text().split('\n').length;
var $numbering = $('<ul/>').addClass('pre-numbering').hide();
$(this).addClass('has-numbering').parent().append($numbering);
for (i = 1; i <= lines; i++) {
$numbering.append($('<li/>').text(i));
};
$numbering.fadeIn(1700);
});
});
</script>
分享到:
相关推荐
从这本书的标签“java jdk7 jdk javanotes”可以推测,它主要针对Java 7版本,包含了Java Development Kit(JDK)的使用方法和特性。由于本书是为教学目的编写的,因此它的内容应该比较注重初学者对Java语言的理解和...
《Java Notes 5》是一本专注于Java编程语言的最新学习指南,旨在帮助读者深入理解和掌握这一强大且广泛应用的编程语言。PDF格式使得这份资料便于在各种设备上阅读和打印,适合自学或者作为教学辅助材料。 Java是...
### Java核心面试知识点详解 #### 一、Java的平台独立性 **1.1 Java最重要的特性是什么?** Java最重要的特性是其平台独立性。这意味着Java程序可以在任何支持Java的平台上运行,无需重新编译。 **1.2 平台独立...
《Javanotes7-web-site》是一本针对大学大一学生的Java基础教程,旨在为初学者提供全面、深入的Java编程知识。这本书以网络版的形式呈现,涵盖了Java语言的基础概念、语法以及面向对象编程的核心思想。在学习这个...
总结,"Core Java notes"涵盖了Java语言的核心概念,从基本语法到面向对象特性,再到高级主题如多线程和集合框架。理解并熟练掌握这些知识对于任何Java开发者来说都是至关重要的。通过深入学习和实践,可以提升编程...
### Java基础知识概述 #### Java课程概览 本课程总计8小时的教学时间,分为两个阶段进行,每个阶段4小时,最终可获得4个学分。课程内容涵盖了Java的基础知识及其在实际开发中的应用。 #### Java语言的优势 Java...
This Java® Notes for Professionals book is compiled from Stack Overflow Documentation, the content is written by the beautiful people at Stack Overflow. Text content is released under Creative ...
英文原版 Introduction to Programming Using Java Version 7.0, August 2014 David J. Eck Hobart and William Smith Colleges
Java编程风格与默认值 在Java编程中,代码风格是一个重要的方面,因为它直接影响代码的可读性和维护性。Java官方推荐使用K&R(Kernighan and Ritchie)风格,这种风格的特点是条件语句和循环语句的大括号紧贴在...
《JavaNotes》是一本专注于Java编程的开源教材,它的出现为初学者和有经验的开发者提供了深入理解Java语言的宝贵资源。"javanotes-master"这个文件名表明这是一个项目的主分支,通常在Git版本控制系统中表示最新或最...
【标题】"leetcode中国-JavaNotes-master:JavaNotes大师"所涵盖的知识点主要集中在Java编程语言和LeetCode算法挑战上,这是一个开源项目,旨在帮助开发者提升其Java基础和算法能力,特别是针对中国公司的面试准备。...
在本项目"Javanotes7.7Git"中,我们主要关注的是David Eck所撰写的免费计算机编程教科书《Javanotes》第七版的第七章内容,特别是关于数组和ArrayList的部分。这本书是学习Java编程的绝佳资源,而第七章的练习提供了...
JavaNotes 本项目基于Java8. 自用的Java知识梳理图, 随时更新. 欢迎新老Javaer一同交流. 如果感觉有用, 请star支持一下~ 意见和建议请开issue交流. 欢迎fork并提出pr共同建设 :) 本项目使用方法 本项目以文件形式...
配置环境变量,通过scala -version判断是否安装成功进入Scala官网,点击Scala 3下载,页面最下发其他安装方式,选择GitHub 下载Scal
1. 普通索引 1. 单列索引 2. 多列索引 3. 子文档索引 2. 唯一索引 3. 稀疏索引 4. 哈希索引 5. 重建索引 6. 删除索引 7. 查看索引
JAVA调用IBM Notes的工具包,基本可以实现在java中操作Notes,适用的Notes版本为9.0,其它版本暂时未知,有兴趣的可以测试一下
2.1、获取安装包 2.2、解压tar包 2.3、编译&安装 3.1、redis-server服务端 4.1、服务端脚本 4.2、客户端脚本 4.3、集群登录