KickJava   Java API By Example, From Geeks To Geeks.

Java > Open Source Codes > test > perf > test1 > CachingReflectionTest


1 package test.perf.test1;
2
3 import java.lang.reflect.*;
4
5 import test.perf.AbstractTest;
6 import test.perf.Foo;
7
8 /**
9  * Class tc1.
10  *
11  * @author Mika Riekkinen
12  */

13 public class CachingReflectionTest extends AbstractTest {
14     private Method m;
15     private Object JavaDoc[] args = new Object JavaDoc[0];
16
17     public void init() {
18         // Make one call to load Foo into JVM
19
Foo.static_method();
20         try {
21             m = getMethod();
22         }
23         catch(Exception JavaDoc e) {
24             System.out.println("ERROR: " + e);
25         }
26     }
27
28     public void test(int lCount) throws Exception JavaDoc {
29         for (int i = 0; i < lCount; i++) {
30             m.invoke(null, args);
31         }
32     }
33
34
35     private Method getMethod() throws Exception JavaDoc {
36         Class JavaDoc c = Foo.class;
37         Method m = c.getDeclaredMethod("static_method", new Class JavaDoc[0]);
38
39         return m;
40     }
41 }
42
Popular Tags