黑马程序员技术交流社区
标题:
java 反射的设计思想问题?
[打印本页]
作者:
黑马_许芸
时间:
2012-9-7 19:28
标题:
java 反射的设计思想问题?
请问Java里面的反射思想是如何设计的? 为什么Class就可以指向所有类的对象?里面的方法的调用又是怎样的原理呢?
import java.lang.reflect.Method;
public class DumpMethods
{
public static void main(String[] args) throws Exception
{
Class<?> classType = InvokeTester.class;
//这里面的数据结构是怎么指向的
Object invokeTester = classType.newInstance()
Method addMethod = classType.getMethod("add", new Class[] { int.class,
int.class });
Object result = addMethod.invoke(invokeTester, new Object[]{1, 2});
//这又是如何的就可以调用了 对象的方法的呢?
System.out.println((Integer)result);
System.out.println("---------------------");
Method echoMethod = classType.getMethod("echo", new Class[]{String.class});
Object result2 = echoMethod.invoke(invokeTester, new Object[]{"tom"});
System.out.println((String)result2);
}
}
欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/)
黑马程序员IT技术论坛 X3.2