자바에서 Class 클래스는 클래스의 정보(메타데이터)를 다루는데 사용된다. Class 클래스를 통해 개발자는 실행 중인 자바 애플리케이션 내에서 필요한 클래스의 속성과 메서드에 대한 정보를 조회하고 조작할 수 있다.
Class.forName() 메서드를 사용하여 클래스를 동적으로 로드하고, newInstance() 메서드를 통해 새로운 인스턴스를 생성할 수 있다.Class clazz = String.class; // 1.클래스에서 조회
Class clazz = new String().getClass();// 2.인스턴스에서 조회
Class clazz = Class.forName("java.lang.String"); // 3.문자열로 조회
위의 세 가지 방법으로 Class 클래스 정보를 조회할 수 있다.
getDeclaredFields(): 클래스의 모든 필드를 조회한다.getDeclaredMethods(): 클래스의 모든 메서드를 조회한다.getSuperclass(): 클래스의 부모 클래스를 조회한다.getInterfaces(): 클래스의 인터페이스들을 조회한다.getDeclaredConstructor().newInstance()getDeclaredConstructor() : 생성자를 선택한다newInstance() : 선택된 생성자를 기반으로 인스턴스를 생성한다.