首页 > 代码库 > java反射之一
java反射之一
public static void main(String[] args) { try { Class cla = Class.forName("com.money.test.Employee"); Object obj = cla.newInstance(); Method method2 = cla.getDeclaredMethod("setNum", int.class); System.out.println(method2.invoke(obj, 3)); Method[] methods = cla.getDeclaredMethods(); for (Method method : methods) { System.out.println(method.getName()); if (method.getName().contains("setNum")) { System.out.println(method.invoke(obj, 2)); } } } catch (Exception ex) { System.out.println(ex.getStackTrace()); } }
class Employee { private int salary; private java.util.Date hireDay; private String name; public int getSalary() { return salary; } public void setSalary(int salary) { this.salary = salary; } public Date getHireDay() { return hireDay; } public void setHireDay(Date hireDay) { this.hireDay = hireDay; } public String getName() { return name; } public void setName(String name) { this.name = name; } public Employee(String name, int salary, Date hireDay) { this.name = name; this.hireDay = hireDay; this.salary = salary; } public Employee() { } static private HashMap<String, String> dict = new HashMap<String, String>(); static { num=0; /* dict.put("1","Employee"); dict.put("2","Employee");*/ } @Override public String toString() { if (hireDay == null) hireDay = Calendar.getInstance().getTime(); SimpleDateFormat formatter; formatter = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss"); return String.format("name:%s,salary:%d,hireDay:%s", name, salary, formatter.format(hireDay)); } static int num; public static int getNum() { return num; } public static int setNum(int a) { num +=a; return getNum(); } }
java反射之一
声明:以上内容来自用户投稿及互联网公开渠道收集整理发布,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任,若内容有误或涉及侵权可进行投诉: 投诉/举报 工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。