리플렉션
업데이트: 2007년 11월
System.Reflection 네임스페이스의 클래스와 System.Type을 사용하면 로드된 어셈블리와 이 어셈블리에 정의된 클래스, 인터페이스, 값 형식 등의 형식에 대한 정보를 얻을 수 있습니다. 리플렉션을 사용하여 런타임에 형식 인스턴스를 만든 다음, 이 형식 인스턴스를 호출하고 액세스할 수도 있습니다.
단원 내용
리플렉션 개요
리플렉션과 리플렉션의 주요 용도에 대해 설명합니다.방법: 리플렉션 전용 컨텍스트에 어셈블리 로드
리플렉션 전용 로드 컨텍스트에 대해 설명합니다. 어셈블리를 로드하는 방법, 컨텍스트를 테스트하는 방법 및 리플렉션 전용 컨텍스트의 어셈블리에 적용된 특성을 검사하는 방법을 보여 줍니다.리플렉션의 런타임 형식
RuntimeType과 같이 System.Reflection 네임스페이스의 추상 클래스를 상속하고 해당 구현을 많이 제공하는 내부 형식에 대해 설명합니다.형식 정보 보기
System.Type 클래스에 대해 설명하고, System.Type과 몇 개의 reflection 클래스를 사용하여 생성자, 메서드, 필드, 속성 및 이벤트에 대한 정보를 얻는 방법을 보여 주는 코드 예제를 제공합니다.리플렉션 및 제네릭 형식
리플렉션이 형식 매개 변수와 제네릭 형식 및 제네릭 메서드의 형식 인수를 처리하는 방법에 대해 설명합니다.Reflection 클래스에서 사용되는 디자인 패턴
메서드 명명 패턴을 비롯하여 Module, Type, MemberInfo 클래스 같이 가장 자주 사용되는 reflection 클래스의 용도를 표 형식으로 보여 줍니다.리플렉션의 보안 고려 사항
형식 정보와 액세스 형식을 검색하는 데 사용될 수 있는 리플렉션 정도를 결정하는 규칙에 대해 설명합니다.동적으로 형식 로드 및 사용
런타임에 바인딩을 지원하는 리플렉션 사용자 지정 바인딩 인터페이스에 대해 설명합니다.기본 멤버 액세스
리플렉션을 사용하여 클래스가 가질 수 있는 기본 멤버에 액세스하는 방법에 대해 설명합니다.기본 인수 값 액세스
리플렉션을 사용하여 기본값이 있는 인수에 액세스하는 방법과 이 인수를 사용하는 메서드를 호출하는 방법에 대해 설명합니다.사용자 지정 특성 액세스
리플렉션을 사용하여 특성 유무와 값을 쿼리하는 방법에 대해 설명합니다.정규화된 형식 이름 지정
BNF(Backus-Naur Form)를 기초로 하는 정규화된 형식 이름의 형식과 특수 문자, 어셈블리 이름, 포인터, 참조 및 배열을 지정하는 데 필요한 구문에 대해 설명합니다.관리되지 않는 리플렉션 API
메타데이터 검사를 위한 관리되지 않는 리플렉션 사용에 대한 정보를 찾을 수 있는 곳에 대해 설명합니다.방법: 리플렉션을 사용하여 대리자 후크
메서드의 대리자를 만들고 이벤트에 후크하는 방법에 대해 설명합니다. 런타임에 DynamicMethod를 사용하여 이벤트 처리 메서드를 만드는 방법에 대해 설명합니다.
참조
Type
런타임 형식 시스템의 형식을 나타내고 리플렉션에 핵심 기능을 제공하는 클래스입니다.System.Reflection
메서드를 나타내는 MethodInfo 클래스와 같은 코드 엔터티의 다른 추상화가 포함된 네임스페이스입니다.System.Reflection.Emit
동적 어셈블리와 동적 메서드를 생성하기 위한 클래스가 포함된 네임스페이스입니다.
관련 단원
- 동적 메서드 및 어셈블리 생성
동적 어셈블리와 동적 메서드를 생성하는 방법에 대해 설명합니다.