TypeBuilder.DefineMethodOverride 메서드
지정된 메서드 선언을 구현하는 지정된 메서드 본문을 지정합니다.
네임스페이스: System.Reflection.Emit
어셈블리: mscorlib(mscorlib.dll)
구문
‘선언
Public Sub DefineMethodOverride ( _
methodInfoBody As MethodInfo, _
methodInfoDeclaration As MethodInfo _
)
‘사용 방법
Dim instance As TypeBuilder
Dim methodInfoBody As MethodInfo
Dim methodInfoDeclaration As MethodInfo
instance.DefineMethodOverride(methodInfoBody, methodInfoDeclaration)
public void DefineMethodOverride (
MethodInfo methodInfoBody,
MethodInfo methodInfoDeclaration
)
public:
void DefineMethodOverride (
MethodInfo^ methodInfoBody,
MethodInfo^ methodInfoDeclaration
)
public void DefineMethodOverride (
MethodInfo methodInfoBody,
MethodInfo methodInfoDeclaration
)
public function DefineMethodOverride (
methodInfoBody : MethodInfo,
methodInfoDeclaration : MethodInfo
)
매개 변수
- methodInfoBody
사용될 메서드 본문입니다. 이것은 MethodBuilder 개체여야 합니다.
- methodInfoDeclaration
선언이 사용될 메서드입니다.
예외
예외 형식 | 조건 |
---|---|
methodInfoBody가 이 클래스에 속하지 않는 경우 |
|
methodInfoBody 또는 methodInfoDeclaration이 Null 참조(Visual Basic의 경우 Nothing)인 경우 |
|
해당 형식이 CreateType을 사용하여 이미 만들어져 있는 경우 - 또는 - 메서드 methodInfoBody의 선언 형식이 이 형식이 아닌 경우 |
설명
DefineMethodOverride는 메서드 구현을 정의합니다. 메서드 구현은 구현에 대한 토큰의 위치이며 메서드 본문이 구현할 선언부를 가리키는 토큰입니다. 메서드 구현이 정의된 형식에 대해 본문이 정의되어야 하며 본문은 virtual(Visual Basic의 경우 Overridable)이어야 합니다. 해당 형식에 의해 구현된 인터페이스에 대해 정의된 메서드, 파생된 클래스의 메서드 또는 해당 형식으로 정의된 메서드에서 선언할 수 있습니다. 인터페이스에서만 선언하게 되면 해당 인터페이스에 대해 정의된 슬롯이 변경됩니다. 기본 형식의 메서드에서 선언한 경우 해당 메서드에 대한 슬롯이 재정의되고 재정의된 메서드에 대한 중복 메서드가 대체됩니다. 재정의된 메서드는 선언된 실제 메서드가 될 수 없습니다. 메서드가 같은 형식에 있으면 슬롯이 대체되고 중복된 모든 대체 메서드가 재정의됩니다.
플랫폼
Windows 98, Windows 2000 SP4, Windows Millennium Edition, Windows Server 2003, Windows XP Media Center Edition, Windows XP Professional x64 Edition, Windows XP SP2, Windows XP Starter Edition
.NET Framework에서 모든 플래폼의 모든 버전을 지원하지는 않습니다. 지원되는 버전의 목록은 시스템 요구 사항을 참조하십시오.
버전 정보
.NET Framework
2.0, 1.1, 1.0에서 지원
참고 항목
참조
TypeBuilder 클래스
TypeBuilder 멤버
System.Reflection.Emit 네임스페이스