Class
每一个对象运行时都有一个对应的Class对象。如果要用反射,必须先获取Class对象。
Class的获取有三种方式
1. 已经有对象的情况,调用对象的getClass方法。
1 | User user = new User(); |
2.直接 类名.class。
1 | Class<?> clazz = User.class; |
3.不知道对象的情况,只知道对象的全限名字符串。
1 | Class.forName(String className) |
Class重点掌握方法
1 | Class<?> clazz = Class.forName("org.fkjava.bean.User"); //根据全限名获得Class对象 |
Field – Class的字段信息
Field没有构造器,只能通过Class获取
重点方法
1 | getDeclaredFields():获得所有字段(私有和非私有都可以获取),返回字段数组。 |
1 | package reflect获取class类型的常用方式; |
Method – Class的方法
Method没有构造器,只能通过Class获取。
重点方法
1 | getDeclaredMethods():获取所有方法。 |