Dieser Artikel wurde maschinell übersetzt. Wenn Sie die englische Version des Artikels anzeigen möchten, aktivieren Sie das Kontrollkästchen Englisch. Sie können den englischen Text auch in einem Popupfenster anzeigen, indem Sie den Mauszeiger über den Text bewegen.
Übersetzung
Englisch

OverflowException-Klasse

 

Veröffentlicht: Oktober 2016

Die Ausnahme, die ausgelöst wird, wenn ein Arithmetik-, Umwandlungs- oder Konvertierungsvorgang in einem geprüften Kontext zu einem Überlauf führt.

Namespace:   System
Assembly:  mscorlib (in mscorlib.dll)

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

<SerializableAttribute>
<ComVisibleAttribute(True)>
Public Class OverflowException
	Inherits ArithmeticException

NameBeschreibung
System_CAPS_pubmethodOverflowException()

Initialisiert eine neue Instanz der OverflowException-Klasse.

System_CAPS_protmethodOverflowException(SerializationInfo, StreamingContext)

Initialisiert eine neue Instanz der OverflowException-Klasse mit serialisierten Daten.

System_CAPS_pubmethodOverflowException(String)

Initialisiert eine neue Instanz der OverflowException-Klasse mit einer angegebenen Fehlermeldung.

System_CAPS_pubmethodOverflowException(String, Exception)

Initialisiert eine neue Instanz der OverflowException-Klasse mit einer angegebenen Fehlermeldung und einem Verweis auf die innere Ausnahme, die diese Ausnahme ausgelöst hat.

NameBeschreibung
System_CAPS_pubpropertyData

Ruft eine Auflistung von Schlüssel-Wert-Paaren ab, die zusätzliche benutzerdefinierte Informationen über die Ausnahme bereitstellen.(Geerbt von „Exception“.)

System_CAPS_pubpropertyHelpLink

Ruft einen Link zur Hilfedatei ab, die dieser Ausnahme zugeordnet ist, oder legt einen Link fest.(Geerbt von „Exception“.)

System_CAPS_pubpropertyHResult

Ruft HRESULT ab oder legt HRESULT fest. Dies ist ein codierter Wert, der einer bestimmten Ausnahme zugeordnet ist.(Geerbt von „Exception“.)

System_CAPS_pubpropertyInnerException

Ruft die Exception-Instanz ab, die die aktuelle Ausnahme verursacht hat.(Geerbt von „Exception“.)

System_CAPS_pubpropertyMessage

Ruft eine Meldung ab, die die aktuelle Ausnahme beschreibt.(Geerbt von „Exception“.)

System_CAPS_pubpropertySource

Gibt den Namen der Anwendung oder des Objekts zurück, die bzw. das den Fehler verursacht hat, oder legt diesen fest.(Geerbt von „Exception“.)

System_CAPS_pubpropertyStackTrace

Ruft eine Zeichenfolgendarstellung der unmittelbaren Frames in der Aufrufliste ab.(Geerbt von „Exception“.)

System_CAPS_pubpropertyTargetSite

Ruft die Methode ab, die die aktuelle Ausnahme auslöst.(Geerbt von „Exception“.)

NameBeschreibung
System_CAPS_pubmethodEquals(Object)

Bestimmt, ob das angegebene Objekt mit dem aktuellen Objekt identisch ist.(Geerbt von „Object“.)

System_CAPS_protmethodFinalize()

Gibt einem Objekt Gelegenheit, Ressourcen freizugeben und andere Bereinigungen durchzuführen, bevor es von der Garbage Collection freigegeben wird. (Geerbt von „Object“.)

System_CAPS_pubmethodGetBaseException()

Gibt beim Überschreiben in einer abgeleiteten Klasse eine Exception zurück, die die ursprüngliche Ursache für eine oder mehrere nachfolgende Ausnahmen ist.(Geerbt von „Exception“.)

System_CAPS_pubmethodGetHashCode()

Fungiert als die Standardhashfunktion.(Geerbt von „Object“.)

System_CAPS_pubmethodGetObjectData(SerializationInfo, StreamingContext)

Legt beim Überschreiben in einer abgeleiteten Klasse die SerializationInfo mit Informationen über die Ausnahme fest.(Geerbt von „Exception“.)

System_CAPS_pubmethodGetType()

Ruft den Laufzeittyp der aktuellen Instanz ab.(Geerbt von „Exception“.)

System_CAPS_protmethodMemberwiseClone()

Erstellt eine flache Kopie des aktuellen Object.(Geerbt von „Object“.)

System_CAPS_pubmethodToString()

Erstellt eine Zeichenfolgendarstellung der aktuellen Ausnahme und gibt diese zurück.(Geerbt von „Exception“.)

NameBeschreibung
System_CAPS_proteventSerializeObjectState

Tritt auf, wenn eine Ausnahme serialisiert wird, um ein Ausnahmezustandsobjekt zu erstellen, das serialisierte Daten für die Ausnahme enthält.(Geerbt von „Exception“.)

Ein OverflowException wird zur Laufzeit in den folgenden Situationen ausgelöst:

  • Eine arithmetische Operation erzeugt ein Ergebnis, das außerhalb des Bereichs des Datentyps, der vom Vorgang zurückgegeben wird. Das folgende Beispiel veranschaulicht die OverflowException die von einer Multiplikationsoperation, die die Grenzen des überläuft ausgelöst wird die Int32 Typ.

    Dim value As Integer = 780000000
    Try
       ' Square the original value.
       Dim square As Integer = value * value 
       Console.WriteLine("{0} ^ 2 = {1}", value, square)
    Catch e As OverflowException
       Dim square As Double = Math.Pow(value, 2)
       Console.WriteLine("Exception: {0} > {1:E}.", _
                         square, Int32.MaxValue)
    End Try
    ' The example displays the following output:
    '       Exception: 6.084E+17 > 2.147484E+009.
    
  • Ein Umwandlung oder Konvertierung Vorgang versucht, eine einschränkende Konvertierung auszuführen, und des Werts des Typs der Daten außerhalb des Bereichs des Zieldatentyps. Das folgende Beispiel veranschaulicht das OverflowException ausgelöst durch den Versuch, einen großen Bytewert ohne Vorzeichen-Wert in einen Bytewert mit Vorzeichen zu konvertieren.

    Dim value As Byte = 241
    Try
       Dim newValue As SByte = (CSByte(value))
       Console.WriteLine("Converted the {0} value {1} to the {2} value {3}.", _
                         value.GetType().Name, value, _
                         newValue.GetType().Name, newValue)
    Catch e As OverflowException
       Console.WriteLine("Exception: {0} > {1}.", value, SByte.MaxValue)
    End Try                            
    ' The example displays the following output:
    '       Exception: 241 > 127.
    

In jedem Fall ist das Ergebnis der Operation ein Wert, der kleiner als der MinValue Eigenschaft oder größer als die MaxValue Eigenschaft des Datentyps, die aus der Operation ergibt.

Der arithmetische, Umwandlungs- oder Konvertierungsoperation Vorgang löst eine OverflowException, muss die Operation in einem überprüften Kontext auftreten. Standardmäßig werden arithmetische Operationen und Überläufe in Visual Basic überprüft; in c# sind sie nicht. Wenn der Vorgang in einem nicht geprüften Kontext auftritt, wird das Ergebnis abgeschnitten, indem alle höherwertigen Bits, die nicht in den Zieltyp passen verworfen werden. Das folgende Beispiel veranschaulicht eine ungeprüfte Konvertierung in c#. Im vorherige Beispiel in einem nicht geprüften Kontext wiederholt.

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.

Die folgenden Microsoft intermediate Language (MSIL)-Anweisungen Auslösen einer OverflowException:

  • add.ovf.< signiert >

  • conv.ovf.< zur Eingabe >

  • conv.ovf.< zur Eingabe >.un

  • mul.ovf.<type>

  • sub.ovf.<type>

  • newarr

OverflowException verwendet HRESULT COR_E_OVERFLOW mit den Wert 0 x 80131516.

Eine Liste der anfänglichen Eigenschaftenwerte für eine Instanz von OverflowException, finden Sie unter der OverflowException Konstruktoren.

Universelle Windows-Plattform
Verfügbar seit 8
.NET Framework
Verfügbar seit 1.1
Portierbare Klassenbibliothek
Unterstützt in: portierbare .NET-Plattformen
Silverlight
Verfügbar seit 2.0
Windows Phone Silverlight
Verfügbar seit 7.0
Windows Phone
Verfügbar seit 8.1

Alle öffentlichen statischen Member ( Shared in Visual Basic) dieses Typs sind threadsicher. Die Threadsicherheit für Instanzmember ist nicht garantiert.

Zurück zum Anfang
Anzeigen: