java | January 31, 2022
java.lang.reflect
package에서 제공된다.Class, method, field information을 access 하려면, getClass
method를 호출한다.
getClass
method는 runtime class represetaion을 return 한다.
getClass()
: object가 속한 class의 이름을 가져오는 데 사용된다.getConstructors()
: object가 속한 class의 public constructors를 가져오는 데 사용된다.getMethod()
: object가 속한 class의 public methods를 가져오는 데 사용된다.// Method는 없고 name, age field만 있는 Person class
public class Person {
private String name;
private int age;
}
// Reflection을 사용하여 class의 모든 field 이름 검색
public void givenObject_whenGetsFieldNamesAtRuntime_thent() {
Object person = new Person();
Field[] fields = person.getClass().getDeclaredFields();
}