JAVA-性能调优-静态方法代替实例方法

在Java 中,使用static 关键字描述的方法是静态方法。与静态方法相比,实例方法的调用需
要消耗更多的系统资源,这是因为实例方法需要维护一张类似虚拟函数导向表的结构,这样可以
方便地实现对多态的支持。对于一些常用的工具类方法,我们没有必要对其进行重载,那么我们
可以尝试将它们声明为static,即静态方法,这样有利于加速方法的调用。
1 即谭浩强教授,他编著的《C 程序设计》发行了1100 万册。
第3 章 Java API 调用优化建议 ■ 57
如代码清单3-7 所示,我们分别定义了两个方法,一个是静态方法,一个是实例方法,然后
在main 函数进程里分别调用10 亿次两个方法,计算两个方法的调用总计时间。
代码清单3-7 静态方法示例
public static void staticMethod(){
}
//实例方法
public void instanceMethod(){
}
@Test
public static void main(String[] args){
long start = System.currentTimeMillis();
//循环10 亿次,创建静态方法
for(int i=0;i<1000000000;i++){
staticVSinstance.staticMethod();
}
System.out.println(System.currentTimeMillis() - start);
start = System.currentTimeMillis();
staticVSinstance si1 = new staticVSinstance();
//循环10 亿次,创建实例方法
for(int j=0;j<1000000000;j++){
si1.instanceMethod();
}
System.out.println(System.currentTimeMillis() - start);

猜你喜欢

转载自buyaozaibeidaole.iteye.com/blog/2298440