使用Java 反射,对类中成员变量赋值.将Json对像转为(2)

// 反射代码,
 final private Map<String, Method> methodMap = new HashMap<String, Method>();// 以set开始的方法的map
                    // 可以直接获取需要的set方法.

protected void init() {
  Class<?> userClass = this.getClass();// Class.forName(this.getClass()); 加载类
  Method[] methods = userClass.getDeclaredMethods();// 获得类的方法集合
  for (int i = 0; i < methods.length; i++) {
   if (methods[i].getName().startsWith("set")) {
    methodMap.put(methods[i].getName().toLowerCase(), methods[i]);

}
  }

}

protected void setProperty(String property, Object v) {
  Method method = methodMap.get(property.toLowerCase());
 
  try {
   method.invoke(this, v);
  } catch (Exception e) {
   // TODO Auto-generated catch block
   e.printStackTrace();
  }
 }

}

对通上述的代码,可以明显发现,使用Java 反射带来的好处

内容版权声明:除非注明,否则皆为本站原创文章。

转载注明出处:http://www.heiqu.com/191a32bb0077de7095478f3907065c29.html