Class 클래스?
-클래스와 인터페이스의 메타데이터를 Class 클래스로 관리
*메타데이터?
클래스 이름, 생성자 정보, 필드 정보, 메소드 정보
-클래스와 인터페이스의 메타데이터를 얻을 수 있다(리플렉션)
Class객체를 얻는 방법은 두가지가 있다.
1. 객체로부터 얻는 방법 : getClass()
Class clazz = obj.getClass();
--> 최상위 클래스인 Object클래스가 가지고 있는 getClass()메소드
2. 문자열로부터 얻는 방법 : forName()
try{
Class clazz = Class.forName(String className);
} catch(ClassNotFoundException e) { }
동적 객체 생성 : newInstance()
-이렇게 만들어진 Class 객체를 이용하면 new연산자를 사용하지 않고도 동적으로 객체를 생성할 수 있다.
-코드 작성 시에 클래스 이름을 결정 할 수 없고, 런타임 시에 클래스 이름이 결정되는 경우 유용하게 사용된다.
-newInstance()메소드의 리턴타입은 Object
본 포스팅은 이것이 자바다 책을 참고하여 작성하였습니다.
'Java 공부' 카테고리의 다른 글
12장 스레드 우선순위 (0) | 2018.12.02 |
---|---|
12장 작업 스레드 생성과 실행 (0) | 2018.12.02 |
11장 API정리_String클래스 (0) | 2018.12.01 |
11장 API 정리_Object클래스 (0) | 2018.12.01 |
12장 멀티스레드 (0) | 2018.11.27 |