Remarque
L’accès à cette page nécessite une autorisation. Vous pouvez essayer de vous connecter ou de modifier des répertoires.
L’accès à cette page nécessite une autorisation. Vous pouvez essayer de modifier des répertoires.
La Exception classe est la classe de base à partir de laquelle les exceptions héritent. Par exemple, la hiérarchie de InvalidCastException classes est la suivante :
Object
Exception
SystemException
InvalidCastException
La Exception classe possède les propriétés suivantes qui facilitent la compréhension d’une exception.
| Nom de la propriété | Descriptif |
|---|---|
| Data | Un IDictionary qui contient des données arbitraires sous forme de paires clé-valeur. |
| 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. |
| InnerException | Cette propriété peut être utilisée pour créer et conserver une série d’exceptions pendant la gestion des exceptions. Vous pouvez l’utiliser pour créer une exception qui contient des exceptions précédemment interceptées. L’exception d’origine peut être capturée par la deuxième exception dans la InnerException propriété, ce qui permet au code qui gère la deuxième exception d’examiner les informations supplémentaires. Par exemple, supposons que vous disposez d’une méthode qui reçoit un argument mal mis en forme. Le code essaie de lire l’argument, mais une exception est levée. La méthode intercepte l’exception et lance un 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 lève une exception plus indicative de l’erreur qui s’est produite. Une exception nouvelle et plus significative peut être créée, où la référence d’exception interne peut être définie sur l’exception d’origine. Cette exception plus significative peut ensuite être levée pour l’appelant. Notez qu’avec cette fonctionnalité, vous pouvez créer une série d’exceptions liées qui se terminent par l’exception levée en premier. |
| Message | Fournit des détails sur la cause d’une exception. |
| Source | Obtient ou définit le nom de l’application ou de l’objet qui provoque l’erreur. |
| StackTrace | Contient une trace de pile qui peut être utilisée pour déterminer où une erreur s’est produite. 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. |
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 se contentent d'hériter de Exception. Par conséquent, les informations les plus importantes pour une exception se trouvent dans la hiérarchie des classes d’exception, le nom de l’exception et les informations contenues dans l’exception.
Nous vous recommandons de lever et de capter uniquement les objets qui dérivent de Exception, mais vous pouvez lever n’importe quel objet qui dérive de la classe Object en tant qu’exception. Notez que pas tous les langages ne permettent le lancement et l’interception d’objets qui ne dérivent pas de Exception.