Constructor[] getConstructors() -- 获得类的所有公共构造函数
Constructor getDeclaredConstructor(Class[] params) -- 获得使用特定参数类型的构造函数(与接入级别无关)
Constructor[] getDeclaredConstructors() -- 获得类的所有构造函数(与接入级别无关)
获得字段信息的Class 反射调用不同于那些用于接入构造函数的调用,在参数类型数组中使用了字段名:
Field getField(String name) -- 获得命名的公共字段
Field[] getFields() -- 获得类的所有公共字段
Field getDeclaredField(String name) -- 获得类声明的命名的字段
Field[] getDeclaredFields() -- 获得类声明的所有字段
用于获得方法信息函数:
Method getMethod(String name, Class[] params) -- 使用特定的参数类型,获得命名的公共方法
Method[] getMethods() -- 获得类的所有公共方法
Method getDeclaredMethod(String name, Class[] params) -- 使用特写的参数类型,获得类声明的命名的方法
Method[] getDeclaredMethods() -- 获得类声明的所有方法 三. Java反射机制应用初探 现在一堆框架搞得人云里雾里的,例如spring等等,大都利用了Java的反射机制,eg. 大名鼎鼎的IOC.昨天晚上闲着没事的时候,初试了下反射,下面是一个简单的测试例子:
控制台输出如下: ===========begin getNameTest============ string class name: java.lang.String button class name: java.awt.Button super button class name: java.awt.Component clsTest name: java.awt.Button ===========end getNameTest============
===========begin getMethodTest========== begin testMethod invoked...... str= hello, my dear! name= amigo end testMethod invoked...... returnStr= return str ===========end getMethodTest==========参考文章: 《侯捷观点--Java反射机制》 《java反射机制》 http://hi.baidu.com/javatwt/blog/item/9aeffd13ddfb65025aaf53d4.html