System.NotImplementedException 클래스

이 문서에서는 이 API에 대한 참조 설명서에 대한 추가 설명서를 제공합니다.

NotImplementedException 특정 메서드, get 접근자 또는 set 접근자가 형식의 멤버로 있지만 구현되지 않은 경우 예외가 throw됩니다.

NotImplementedException 는 참조 같음을 지원하는 기본 Object.Equals 구현을 사용합니다. 인스턴스 NotImplementedException의 초기 값 목록은 생성자를 참조 NotImplementedException 하세요.

예외 throw

해당 멤버가 아직 개발 중이고 나중에 프로덕션 코드에서만 구현될 때 고유한 형식의 속성 또는 메서드에서 예외를 throw NotImplementedException 하도록 선택할 수 있습니다. 즉, 예외는 NotImplementedException "아직 개발 중"과 동의어여야 합니다.

예외 처리

예외는 NotImplementedException 호출하려는 메서드 또는 속성에 구현이 없으므로 기능이 없음을 나타냅니다. 따라서 블록에서 try/catch 이 오류를 처리해서는 안 됩니다. 대신 코드에서 멤버 호출을 제거해야 합니다. 라이브러리의 프로덕션 버전에서 구현될 때 멤버에 대한 호출을 포함할 수 있습니다.

경우에 따라 NotImplementedException 사전 프로덕션 라이브러리에서 아직 개발 중인 기능을 나타내는 데 예외를 사용하지 않을 수 있습니다. 그러나 여전히 기능을 사용할 수 없음을 나타내며 코드에서 멤버 호출을 제거해야 합니다.

NotImplementedException 및 기타 예외 형식

.NET에는 형식의 NotSupportedExceptionPlatformNotSupportedException특정 멤버에 대한 구현이 없음을 나타내는 두 가지 다른 예외 형식도 포함됩니다. 다음 조건에서 예외 대신 NotImplementedException 다음 중 하나를 throw해야 합니다.

  • PlatformNotSupportedException 일부 플랫폼 또는 버전에서 사용할 수 있지만 다른 플랫폼은 사용할 수 없는 하나 이상의 멤버가 있는 형식을 디자인한 경우 기능이 지원되지 않는 플랫폼에서 예외를 throw합니다.

  • NotSupportedException 인터페이스 멤버 또는 추상 기본 클래스 메서드에 대한 재정의를 구현할 수 없는 경우 예외를 throw합니다.

    예를 들어 Convert.ToInt32(DateTime) 날짜와 시간과 32비트 부가 정수 간에 의미 있는 변환이 없기 때문에 메서드는 예외를 throw NotSupportedException 합니다. 클래스가 인터페이스를 구현하기 때문에 이 경우 메서드가 ConvertIConvertible 있어야 합니다.

추상 기본 클래스를 NotSupportedException 구현한 경우 예외를 throw하고 파생 클래스에서 재정의해야 하는 새 멤버를 추가해야 합니다. 이 경우 멤버를 추상화하면 기존 서브클래스가 로드되지 않습니다.