📄 invokestatic.java
字号:
package jbe.micro;import jbe.BenchMark;import jbe.Execute;public class InvokeStatic extends BenchMark { static int val; public InvokeStatic() { val = 123; }/* 0: iload_0 1: iload_1 2: iadd 3: getstatic #2; //Field val:I 6: iadd 7: ireturn*/ public static int add(int a, int b) { return a+b+val; } /* 9: iload_2 10: iload_3 11: iload_1 12: invokestatic #3; //Method add:(II)I 15: iadd 16: istore_2*/ public int test(int cnt) { int a = 0; int i; for (i=0; i<cnt; ++i) { a += InvokeStatic.add(i, cnt); } return a; }/* 9: iload_2 10: iload_3 11: iload_1 12: iadd 13: getstatic #2; //Field val:I 16: iadd 17: iadd 18: istore_2*/ public int overhead(int cnt) { int a = 0; int i; for (i=0; i<cnt; ++i) { a += i+cnt+val; } return a; } public String getName() { return "invokestatic"; } public static void main(String[] args) { BenchMark bm = new InvokeStatic(); Execute.perform(bm); } }
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -