java反射实例

public class testReflect {
public static void main(String[] args) throws Exception {
StringBuffer sb = new StringBuffer();
Class aClass = Class.forName("testReflction.Person");
//获取类的所有属性
Field[] fs= aClass.getDeclaredFields();
Method[] mt2 = aClass.getDeclaredMethods();
for(Field field : fs){
sb.append(field.getName()+"\n");//属性名字
}
for(Method method : mt2){
sb.append(method.getName()+"\n");//方法名字
}
System.out.println(sb);//打印属性
//获取特定的属性
Field idField = aClass.getDeclaredField("age");
//获取特定的方法
Method method = aClass.getDeclaredMethod("getAge");
Object object = aClass.newInstance();//实例化这个对象
idField.setAccessible(true);
idField.set(object, 123);
System.out.println(idField.get(object));
System.out.println(idField);
System.out.println(method);
}

猜你喜欢

转载自blog.csdn.net/lhanson/article/details/50629716
今日推荐