Classe et propriétés d’exceptionException class and properties

La classe Exception est la classe de base dont héritent les exceptions.The Exception class is the base class from which exceptions inherit. Par exemple, la hiérarchie de classes InvalidCastException se présente comme suit :For example, the InvalidCastException class hierarchy is as follows:

Object
  Exception
    SystemException
      InvalidCastException

La classe Exception a les propriétés suivantes qui vous permettront de mieux comprendre une exception.The Exception class has the following properties that help make understanding an exception easier.

Nom de la propriétéProperty Name DescriptionDescription
Data IDictionary qui contient des données arbitraires dans des paires clé-valeur.An IDictionary that holds arbitrary data in key-value pairs.
HelpLink Peut contenir une URL (ou URN) vers un fichier d’aide qui fournit des informations détaillées sur la cause d’une exception.Can hold a URL (or URN) to a help file that provides extensive information about the cause of an exception.
InnerException Cette propriété peut être utilisée pour créer et conserver une série d’exceptions pendant la gestion des exceptions.This property can be used to create and preserve a series of exceptions during exception handling. Vous pouvez l’utiliser pour créer une exception qui contient des exceptions interceptées précédemment.You can use it to create a new exception that contains previously caught exceptions. L’exception d’origine peut être capturée par la deuxième exception dans la propriété InnerException, ce qui permet au code qui gère la deuxième exception d’examiner les informations supplémentaires.The original exception can be captured by the second exception in the InnerException property, allowing code that handles the second exception to examine the additional information. Par exemple, supposons que vous disposez d’une méthode qui reçoit un argument avec une mise en forme incorrecte.For example, suppose you have a method that receives an argument that's improperly formatted. Le code essaie de lire l’argument, mais une exception est levée.The code tries to read the argument, but an exception is thrown. La méthode intercepte l’exception et lève une exception FormatException.The method catches the exception and throws a FormatException. Pour améliorer la capacité de l’appelant à déterminer la raison pour laquelle une exception est levée, il est parfois souhaitable qu’une méthode intercepte une exception levée par une routine d’assistance, puis qu’elle lève une exception plus évocatrice de l’erreur qui s’est produite.To improve the caller's ability to determine the reason an exception is thrown, it is sometimes desirable for a method to catch an exception thrown by a helper routine and then throw an exception more indicative of the error that has occurred. Une exception plus significative peut être créée, dans laquelle la référence à l’exception interne peut être définie sur l’exception d’origine.A new and more meaningful exception can be created, where the inner exception reference can be set to the original exception. Cette exception plus significative peut ensuite être levée pour l’appelant.This more meaningful exception can then be thrown to the caller. Notez que cette fonctionnalité vous permet de créer une série d’exceptions liées qui se termine avec l’exception initialement levée.Note that with this functionality, you can create a series of linked exceptions that ends with the exception that was thrown first.
Message Fournit les détails de la cause d’une exception.Provides details about the cause of an exception.
Source Obtient ou définit le nom de l'application ou de l'objet qui est à l'origine de l'erreur.Gets or sets the name of the application or the object that causes the error.
StackTrace Contient une trace de pile qui peut être utilisée pour déterminer où une erreur s’est produite.Contains a stack trace that can be used to determine where an error occurred. La trace de la pile comprend le nom du fichier source et le numéro de ligne du programme si les informations de débogage sont disponibles.The stack trace includes the source file name and program line number if debugging information is available.

La plupart des classes qui héritent de Exception n’implémentent pas de membres supplémentaires ni ne fournissent de fonctionnalités supplémentaires, elles héritent simplement de Exception.Most of the classes that inherit from Exception do not implement additional members or provide additional functionality; they simply inherit from Exception. Par conséquent, vous pouvez trouver les informations les plus importantes d’une exception dans la hiérarchie des classes d’exception, le nom de l’exception et les informations contenues dans l’exception.Therefore, the most important information for an exception can be found in the hierarchy of exception classes, the exception name, and the information contained in the exception.

Nous vous recommandons de lever et d’intercepter uniquement des objets qui dérivent de Exception, mais vous pouvez lever comme exception n’importe quel objet qui dérive de la classe Object.We recommend that you throw and catch only objects that derive from Exception, but you can throw any object that derives from the Object class as an exception. Notez que tous les langages ne prennent pas forcément en charge la levée et l’interception d’objets qui ne dérivent pas de Exception.Note that not all languages support throwing and catching objects that do not derive from Exception.

Voir aussiSee also