Java反射的简单实现

Java反射的简单实现,

新建一个User类将属性和方法设置为public不然获取不到,

 1 public class User {
 2     public String name;
 3     public int age;
 4 
 5     public String getName() {
 6         return name;
 7     }
 8 
 9     public void setName(String name) {
10         this.name = name;
11     }
12 
13     public int getAge() {
14         return age;
15     }
16 
17     public void setAge(int age) {
18         this.age = age;
19     }
20 
21     public User(String name, int age) {
22         this.name = name;
23         this.age = age;
24     }
25 
26     public User() {
27     }
28 
29     @Override
30     public String toString() {
31         return "User [name=" + name + ", age=" + age + "]";
32     }
33 }

测试

 1 private static void fanshe() throws ClassNotFoundException, InstantiationException, IllegalAccessException {
 2         // 加载类
 3         Class cls = Class.forName("com.wb.day01.test.entity.User");
 4         //获取该类的所有属性
 5         Field[] fields = cls.getFields();
 6         for (Field f : fields)
 7             System.out.println("属性名称:" + f.getName());
 8         //获取该类的所有方法
 9         Method[] methods = cls.getMethods();
10         for (Method m : methods)
11             System.out.println("方法名称:" + m.getName());
12         //通过反射来建立一个User对象
13         User user = (User)cls.newInstance();
14         user.setName("小明");
15         user.setAge(30);
16         System.out.println(user);
17     }

 

posted @ 2019-06-11 21:23  零度放纵  阅读(111)  评论(0)    收藏  举报