黑马程序员技术交流社区
标题:
java反射
[打印本页]
作者:
冯超
时间:
2014-5-29 14:37
标题:
java反射
关于java反射,在有名的ssh中都用到过,比如Spring 配置bean 通过字符串来实例化该类,hibernate映射数据库,Struts中的拦截器invoke().
反射中常用的方法:
Field[] fields = clazz.getFields(); //获取属性为public的字段
Field[] fields = clazz.getDeclaredFields(); //获取所有属性的字段
Method[] methods = clazz.getMethods(); //获取修饰为public的 方法
Method[] methods = clazz.getDeclaredMethods(); //获取所有的方法
Constructor[] construtors = clazz.getConstructors(); //获取修饰为public的构造方法
Constructor[] construtors = clazz.getDeclaredConstructors(); //获取所有的构造方法
Method m = clazz.getMethod("eat");
m.invoke(clazz.newInstance()); //调用该方法
调用带有参数的构造方法
Dog d = (Dog) clazz.getConstructor(new Class[]{String.class}).newInstance("zxzx");
理解反射 不是一定会用到反射
就想你懂网络 不一定一定会用到网络一样
理论是你对一种技术的理解 理解了才会得心印手!
欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/)
黑马程序员IT技术论坛 X3.2