이 문서는 기계 번역을 이용하여 번역되었습니다. 문서를 영문으로 보려면 영문 확인란을 선택하세요. 마우스 포인터를 텍스트 위로 이동시켜 팝업 창에서 영문 텍스트를 표시할 수도 있습니다.
번역
영문

OverflowException 클래스

 

게시 날짜: 2016년 11월

선택한 컨텍스트에서 산술 연산, 캐스팅 또는 변환 작업을 수행한 결과로 오버플로가 발생하는 경우에 throw되는 예외입니다.

네임스페이스:   System
어셈블리:  mscorlib(mscorlib.dll에 있음)

System.Object
  System.Exception
    System.SystemException
      System.ArithmeticException
        System.OverflowException

[SerializableAttribute]
[ComVisibleAttribute(true)]
public class OverflowException : ArithmeticException

이름설명
System_CAPS_pubmethodOverflowException()

OverflowException 클래스의 새 인스턴스를 초기화합니다.

System_CAPS_protmethodOverflowException(SerializationInfo, StreamingContext)

serialize된 데이터를 사용하여 OverflowException 클래스의 새 인스턴스를 초기화합니다.

System_CAPS_pubmethodOverflowException(String)

지정된 오류 메시지를 사용하여 OverflowException 클래스의 새 인스턴스를 초기화합니다.

System_CAPS_pubmethodOverflowException(String, Exception)

지정된 오류 메시지와 해당 예외의 원인인 내부 예외에 대한 참조를 사용하여 OverflowException 클래스의 새 인스턴스를 초기화합니다.

이름설명
System_CAPS_pubpropertyData

예외에 대한 사용자 정의 추가 정보를 제공하는 키/값 쌍의 컬렉션을 가져옵니다.(Exception에서 상속됨)

System_CAPS_pubpropertyHelpLink

이 예외와 연결된 도움말 파일에 대한 링크를 가져오거나 설정합니다.(Exception에서 상속됨)

System_CAPS_pubpropertyHResult

특정 예외에 할당된 코드화된 숫자 값인 HRESULT를 가져오거나 설정합니다.(Exception에서 상속됨)

System_CAPS_pubpropertyInnerException

현재 예외를 발생시킨 Exception 인스턴스를 가져옵니다.(Exception에서 상속됨)

System_CAPS_pubpropertyMessage

현재 예외를 설명하는 메시지를 가져옵니다.(Exception에서 상속됨)

System_CAPS_pubpropertySource

오류를 발생시키는 응용 프로그램 또는 개체의 이름을 가져오거나 설정합니다.(Exception에서 상속됨)

System_CAPS_pubpropertyStackTrace

호출 스택의 직접 실행 프레임 문자열 표현을 가져옵니다.(Exception에서 상속됨)

System_CAPS_pubpropertyTargetSite

현재 예외를 throw하는 메서드를 가져옵니다.(Exception에서 상속됨)

이름설명
System_CAPS_pubmethodEquals(Object)

지정한 개체가 현재 개체와 같은지 여부를 확인합니다. (Object에서 상속됨)

System_CAPS_protmethodFinalize()

개체가 가비지 수집자에서 회수되기 전에, 해당 개체에서 리소스를 해제하고 다른 정리 작업을 수행할 수 있게 합니다. (Object에서 상속됨)

System_CAPS_pubmethodGetBaseException()

파생 클래스에서 재정의된 경우 하나 이상의 후속 예외의 근본 원인이 되는 Exception을 반환합니다.(Exception에서 상속됨)

System_CAPS_pubmethodGetHashCode()

기본 해시 함수로 작동합니다.(Object에서 상속됨)

System_CAPS_pubmethodGetObjectData(SerializationInfo, StreamingContext)

파생 클래스에서 재정의된 경우 예외에 관한 정보를 SerializationInfo에 설정합니다.(Exception에서 상속됨)

System_CAPS_pubmethodGetType()

현재 인스턴스의 런타임 형식을 가져옵니다.(Exception에서 상속됨)

System_CAPS_protmethodMemberwiseClone()

현재 Object의 단순 복사본을 만듭니다.(Object에서 상속됨)

System_CAPS_pubmethodToString()

현재 예외에 대한 문자열 표현을 만들고 반환합니다.(Exception에서 상속됨)

이름설명
System_CAPS_proteventSerializeObjectState

예외에 대한 serialize된 데이터를 포함하는 예외 상태 개체를 만들기 위해 예외를 serialize할 때 발생합니다.(Exception에서 상속됨)

OverflowException 런타임에 다음과 같은 경우에 throw 됩니다.

  • 산술 연산에서 작업에 의해 반환 되는 데이터 형식의 범위 밖에 있는 결과 생성 합니다. 다음 예제에서는 OverflowException 의 범위를 오버플로 하는 곱하기 연산에서 throw 되는 Int32 유형입니다.

    int value = 780000000;
    checked {
    try {
       // Square the original value.
       int square = value * value; 
       Console.WriteLine("{0} ^ 2 = {1}", value, square);
    }
    catch (OverflowException) {
       double square = Math.Pow(value, 2);
       Console.WriteLine("Exception: {0} > {1:E}.", 
                         square, Int32.MaxValue);
    } }
    // The example displays the following output:
    //       Exception: 6.084E+17 > 2.147484E+009.
    
  • 캐스팅 또는 변환 작업에서 축소 변환을 수행 하 고 원본 데이터 형식의 값이 대상 데이터 형식의 범위 밖에 합니다. 다음 예제는 OverflowException 큰 부호 없는 바이트 값을 부호 있는 바이트 값으로 변환 하려고에서 throw 되는 합니다.

    byte value = 241;
    checked {
    try {
       sbyte newValue = (sbyte) value;
       Console.WriteLine("Converted the {0} value {1} to the {2} value {3}.", 
                         value.GetType().Name, value, 
                         newValue.GetType().Name, newValue);
    }
    catch (OverflowException) {
       Console.WriteLine("Exception: {0} > {1}.", value, SByte.MaxValue);
    } }                            
    // The example displays the following output:
    //       Exception: 241 > 127.
    

각각의 경우에서 작업의 결과 있는 값 보다 작은 MinValue 속성 보다 크거나는 MaxValue 는 작업에서 생성 되는 데이터 형식의 속성입니다.

Throw 하는 산술, 캐스팅 또는 변환 작업에 대 한는 OverflowException, 작업은 확인 된 컨텍스트에서 발생 해야 합니다. 기본적으로 산술 연산 및 Visual Basic의 오버플로 확인 됩니다. C#으로 하지 않습니다. Unchecked 컨텍스트에서 작업이 발생 하는 경우 결과 대상 형식에 맞지 않는 상위 비트가 삭제 되 고 잘립니다. 다음 예제에서는 C#에서 사용 하는 비 검사 변환을 보여 줍니다. Unchecked 컨텍스트에서 앞의 예제를 반복 합니다.

byte value = 241;
try {
   sbyte newValue = (sbyte) value;
   Console.WriteLine("Converted the {0} value {1} to the {2} value {3}.", 
                     value.GetType().Name, value, 
                     newValue.GetType().Name, newValue);
}
catch (OverflowException) {
   Console.WriteLine("Exception: {0} > {1}.", value, SByte.MaxValue);
}
// The example displays the following output:
//       Converted the Byte value 241 to the SByte value -15.

MSIL (intermediate language) 명령은 throw 하는 다음 Microsoft는 OverflowException:

  • add.ovf.< 서명 >

  • conv.ovf.< 입력 >

  • conv.ovf.< 입력 >.un

  • mul.ovf.<type>

  • sub.ovf.<type>

  • newarr

OverflowException 0x80131516 값이 있는 HRESULT COR_E_OVERFLOW를 사용 합니다.

인스턴스에 대 한 초기 속성 값 목록은 OverflowException, 참조는 OverflowException 생성자입니다.

유니버설 Windows 플랫폼
8 이후 사용 가능
.NET Framework
1.1 이후 사용 가능
이식 가능한 클래스 라이브러리
이식 가능한 .NET 플랫폼 에서 지원됨
Silverlight
2.0 이후 사용 가능
Windows Phone Silverlight
7.0 이후 사용 가능
Windows Phone
8.1 이후 사용 가능

이 형식의 모든 public static(Visual Basic의 공유 Visual Basic의 경우) 멤버는 스레드로부터 안전합니다. 인스턴스 멤버는 스레드로부터의 안전이 보장되지 않습니다.

맨 위로 이동
표시: