kann man mit javaassist.
http://www.jboss.org/products/javassist.html

Bsp:
Code :
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
/**
 * 
 */
package de.tutorials;
 
import javassist.ClassPool;
import javassist.CtClass;
import javassist.CtMethod;
 
/**
 * @author Tom
 *
 */
public class JavaAssistExample {
 
    /**
     * @param args
     */
    public static void main(String[] args) throws Exception{
        ClassPool pool = ClassPool.getDefault();
        CtClass clss = pool.get("de.tutorials.Foo");
        CtMethod method = clss.getDeclaredMethod("bar");
        method.setBody("System.out.println(new java.util.Date());");
        
        Class clazz = clss.toClass();
        Foo foo = (Foo)clazz.newInstance();
        foo.bar();
 
    }
}

Code :
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
/**
 * 
 */
package de.tutorials;
 
/**
 * @author Tom
 *
 */
public class Foo {
    /**
     * @param args
     */
    public static void main(String[] args) {
    
    }
    public void bar(){
        
    }
}

(beispiel) Ausgabe:
Tue Jun 07 20:43:00 CEST 2005

Coole Sache, was?

Gruß Tom