- 博客(7)
- 资源 (3)
- 收藏
- 关注
原创 <编写高质量改善java程序的151个建议>----笔记
1.显示申明serialVersionUID可以避免对象不一致。因为在jvm反序列化时,会比较数据流中的serialVersionUID与类的serialVersionUID是否相同,若相同则认为类没有发生变化,可以把数据流load为实例对象;若不同,则抛异常InnalidClassException. 2.避免用序列化类在构造函数中为final变量赋值。反序列化时final变量在以下情况不会
2014-05-27 18:26:56 417
转载 java泛型总结
Java泛型(generics)是JDK 5中引入的一个新特性,允许在定义类和接口的时候使用类型参数(type parameter)。声明的类型参数在使用时用具体的类型来替换。泛型最主要的应用是在JDK 5中的新集合类框架中。对于泛型概念的引入,开发社区的观点是褒贬不一。从好的方面来说,泛型的引入可以解决之前的集合类框架在使用过程中通常会出现的运行时刻类型错误(安全性更好),因为编译器可以在编译时
2014-05-21 20:19:52 274
原创 java序列化注意点
1.显示申明serialVersionUID可以避免对象不一致。因为在jvm反序列化时,会比较数据流中的serialVersionUID与类的serialVersionUID是否相同,若相同则认为类没有发生变化,可以把数据流load为实例对象;若不同,则抛异常InnalidClassException. 2.避免用序列化类在构造函数中为final变量赋值。反序列化时final变量在以下情况不会
2014-05-19 10:24:28 418
转载 消除Java应用中的Exception开销
抛异常最大的消耗在于构造整个异常栈的过程,如果你的栈很深,特别是用了一些框架的话,这个开销基本是不可忽视的,之前做的一个优化显示当时应用中的一个异常使得整个应用的性能下降至少30%。 一、开销在哪 最大开销的地方在这里,当你去new一个Exception的时候,会调用父类Throwable的构造函数,Throwable的构造函数中会调用native的fillInStackTrace()
2014-05-16 08:56:25 792
原创 System.getProperty()方法小结
System.out.println("java版本号:" + System.getProperty("java.version")); // java版本号 System.out.println("Java提供商名称:" + System.getProperty("java.vendor")); // Java提供商名称 System.out.
2014-05-13 10:50:32 470
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人