public class HelloWorld
{
    public static void main(String[] args) throws Exception {
        System.out.println("Hello World!");
        
        Object obj = new Object() {
            public void hoge() {
                System.out.println("hoge "+this.toString());
            }
        };
        
        System.out.println(obj);
        Class c = obj.getClass();        
        System.out.println(c);        
        java.lang.reflect.Method m = c.getMethod("hoge");        
        m.invoke(obj);
        
        Object obj2 = c.newInstance();        
        System.out.println(obj2);        
        Class c2 = obj2.getClass();        
        System.out.println(c2);        
        java.lang.reflect.Method m2 = c2.getMethod("hoge");        
        m2.invoke(obj2);
        
    }
}