런타임에 프로그램의 클래스를 조사하기 위한 기술
프로그램이 실행중일 때, 객체 내부 구조 파악
1) 동적으로 어떠한 클래스를 이용할지 모를 때 사용 2) 작성시점에는 어떠한 클래스를 사용할 지 모르고, 런타임 시점에서 가져와 실행해야 할 때 사용