Reflection !?
- 구체적인 클래스 타입을 알지 못해도 해당 클래스의 객체 생성, 메소드, 타입, 변수들에 접근할 수 있도록 도와주는 java API
언제 사용?
- 동적으로 클래스를 사용해야 할 때 필요하다.
- 작성 시점에는 어떤 클래스를 사용해야 하는 지 모르는 경우, 런타임 시점에 클래스를 가져와서 실행 해야 하는 경우 사용된다.
어떻게 가능한가?
- 자바 클래스 파일은 프로그램 생성 시에 Heap 영역에 저장된다.
- 클래스 이름만 알고 있다면 언제든 이 영역에 들어가서 클래스의 정보를 가져올 수 있습니다.