1. 다형성과 상속 객체 지향 프로그래밍에서 하나의 기본 클래스 포인터가 다양한 파생 클래스의 인스턴스를 가리킬 수 있습니다. 이 경우, 컴파일 타임에는 실제로 어떤 파생 클래스의 인스턴스가 해당 포인터를 통해 참조될지 알 수 없습니다. 런타임에 특정 조건에 따라 다른 파생 클래스의 인스턴스가 생성되어 할당될 수 있기 때문입니다. 2. 객체 직렬화와 동적 객체 생성 애플리케이션에서 객체의 상태를 파일이나 네트워크를 통해 저장하고, 나중에 이를 다시 불러올 때 객체 직렬화가 사용됩니다. 직렬화 과정에서 객체의 타입 정보도 함께 저장되어야 하며, 나중에 이 정보를 사용하여 원본 객체와 동일한 타입의 객체를 동적으로 생성해야 합니다. 이 과정에서 런타임에 타입 정보를 확인하고 객체를 생성하는 메커니즘이 필요합..