反射
JAVA反射机制是在运行状态中,对于任意一个实体类,都能够知道这个类的所有属性和方法;对于任意一个对象,都能够调用它的任意方法和属性;这种动态获取信息以及动态调用对象方法的功能称为java语言的反射机制。
Java反射中常用方法有19个,下面介绍这些方法。
一 获取Class类对象
获取Class类对象, 有三种方式:
1. Class Class.forName(“完整的包名.类名”);(最常用)
例如: sueyun.cn.reflect.Person
2. Class 类名.class
3. Class 类对象.getClass();
//首先创建 一个实体类用于演示反射的用法
public class Person {
// 成员变量 Field
private Integer id;
private String name;
public int test = 20;
public static int testStatic = 30;
public Person() {
}
public Person(Integer id) {
super();
this.id = id;
}
public Person(String name) {
super();
this.name = name;
}
public Person(Integer id, String name, int test) {
super();
this.id = id;
this.name = name;
this.test = test;
}
private Person(Integer id, String name) {
super();
this.id = id;
this.name = name;
}
public Integer getId() {
return id;
}
public void setId(Integer id) {
this.id = id;
}
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
private void testPrivate() {
System.out.println("私有化成员方法");
}
public static void testStaticMethod() {
System.out.println("静态成员方法");
}
@Override
public String toString() {
return "Person [id=" + id + ", name=" + name + ", test=" + test + "]";
}
public void game() {
System.out.println("pubg");
}
public void