JAVA代码优化器 java代码性能优化( 七 )


long型 , 然后在使用的时候转换为Date类型
6 类名 , 方法名和变量名尽量使用简短的名字,可以考虑使用Hashjava, Jobe, Obfuscate and Jshrink等工具自动完成这个工作
7 将static final类型的变量定义到Interface中去
8 算术运算 能用左移/右移的运算就不要用*和/运算 , 相同的运算不要运算多次
2. 不要两次初始化变量
Java通过调用独特的类构造器默认地初始化变量为一个已知的值 。所有的对象被设置成null , integers (byte, short, int, long)被设置成0 , float和double设置成0.0 , Boolean变量设置成false 。这对那些扩展自其它类的类尤其重要,这跟使用一个新的关键词创建一个对象时所有一连串的构造器被自动调用一样 。
3. 在任何可能的地方让类为Final
标记为final的类不能被扩展 。在《核心Java API》中有大量这个技术的例子,诸如java.lang.String 。将String类标记为final阻止了开发者创建他们自己实现的长度方法 。
更深入点说,如果类是final的,所有类的方法也是final的 。Java编译器可能会内联所有的方法(这依赖于编译器的实现) 。在我的测试里,我已经看到性能平均增加了50% 。
9. 异常在需要抛出的地方抛出,try catch能整合就整合
try {
some.method1(); // Difficult for javac
} catch( method1Exception e ) { // and the JVM runtime
// Handle exception 1 // to optimize this
} // code
try {
some.method2();
} catch( method2Exception e ) {
// Handle exception 2
}
try {
some.method3();
} catch( method3Exception e ) {
// Handle exception 3
}
已下代码 更容易被编译器优化
try {
some.method1(); // Easier to optimize
some.method2();
some.method3();
} catch( method1Exception e ) {
// Handle exception 1
} catch( method2Exception e ) {
// Handle exception 2
} catch( method3Exception e ) {
// Handle exception 3
}
10. For循环的优化
Replace…
for( int i = 0; icollection.size(); i++ ) {
...
}
with…
for( int i = 0, n = collection.size(); in; i++ ) {
...
}
5、 在JAVA + ORACLE 的应用系统开发中 , java中内嵌的SQL语句尽量使用大写的形式,以减轻ORACLE解析器的解析负担 。
10、尽量采用lazy loading 的策略,即在需要的时候才开始创建 。
例如: String str = “aaa”;
if(i == 1) {
list.add(str);
}
应替换为:
if(i == 1) {
String str = “aaa”;
list.add(str);
}
12、不要在循环中使用:
Try {
} catch() {
}
应把其放置在最外层
Java代码的优化方法有哪些说到代码优化JAVA代码优化器,每个人或多或少都掌握一到两种方法JAVA代码优化器,但是这样的方法对提升代码运行效率效果不大,最重要是对代码的重视和了解,这样才能提升代码的运行效率 。在进行代码优化的过程中 , 方法是非常重要的 , 多掌握几种方法,根据代码的不同情况选择适合的方法进行优化 。下面电脑培训为大家介绍Java代码优化的几种方法 。
1、使用指定类、方法的final修饰符
具有final修饰符的类不可派生 。在Java核心API中,有许多最终应用程序的例子 , 例如java.lang.String,整个类都是final 。为类指定final修饰符允许继承类,并且为方法指定final修饰符允许覆盖该方法 。如果将类指定为final,IT培训认为该类的所有方法都是final 。Java编译器将寻找内联所有最终方法的机会 。内联对于提高Java操作的效率非常重要 。这可以将性能平均提高50% 。

推荐阅读