Java Notes
来源:互联网 发布:什么是php探针 编辑:程序博客网 时间:2024/05/16 17:52
关于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的默认模式
- Class类文件结构:http://blog.csdn.net/ns_code/article/details/17675609
http://coolshell.cn/articles/9229.html
jdk
- final、static、static final修饰的字段赋值的区别:
- static修饰的字段在类加载过程中的准备阶段被初始化为0或null等默认值,而后在初始化阶段(触发类构造器)才会被赋予代码中设定的值,如果没有设定值,那么它的值就为默认值。
- final修饰的字段在运行时被初始化(可以直接赋值,也可以在实例构造器中赋值),一旦赋值便不可更改;
- static final修饰的字段在Javac时生成ConstantValue属性,在类加载的准备阶段根据ConstantValue的值为该字段赋值,它没有默认值,必须显式地赋值,否则Javac时会报错。可以理解为在编译期即把结果放入了常量池中。
http://blog.csdn.net/ns_code/article/details/17675609
0 0
- Java - Notes
- notes[java]
- java notes
- java notes
- Java Notes
- Java Notes
- Java 游戏开发Notes
- Java Thread - Notes
- Java 游戏开发Notes
- Java-Notes Documents
- java 访问notes domino
- java 读取notes数据库
- Java Container Learning notes
- Java 游戏开发Notes
- Java Notes: ArrayList
- Notes:java comile flag
- Java API Study Notes
- Java 1.5 Annotation Notes
- Solr - 主/从同步
- 文件和目录属性
- 项目中二级指针的使用
- Jquery的各个Ajax函数,$.get(),$.post(),$.ajax(),$.getJSON()的用法
- [bzoj3572][HNOI2014]世界树
- Java Notes
- html 图像映射(一个图像多个连接)
- PyCharm 中文注释报错 SyntaxError: Non-ASCII character
- 复选框与文字对齐的问题
- 块级元素文本垂直居中方法
- 杂记
- Gof单例模式
- rest_framework 外键关联反查询
- c语言swap(a,b)值交换的4种实现方法