Nota
O acesso a esta página requer autorização. Pode tentar iniciar sessão ou alterar os diretórios.
O acesso a esta página requer autorização. Pode tentar alterar os diretórios.
A Exception classe é a classe base da qual as exceções herdam. Por exemplo, a hierarquia de classes é a InvalidCastException seguinte:
Object
Exception
SystemException
InvalidCastException
A Exception classe tem as seguintes propriedades que ajudam a facilitar a compreensão de uma exceção.
Nome da propriedade | Descrição |
---|---|
Data | Um IDictionary que contém dados arbitrários em pares chave-valor. |
HelpLink | Pode conter uma URL (ou URN) para um arquivo de ajuda que fornece informações extensas sobre a causa de uma exceção. |
InnerException | Essa propriedade pode ser usada para criar e preservar uma série de exceções durante o tratamento de exceções. Você pode usá-lo para criar uma nova exceção que contenha exceções capturadas anteriormente. A exceção original pode ser capturada pela segunda exceção na InnerException propriedade, permitindo que o código que manipula a segunda exceção examine as informações adicionais. Por exemplo, suponha que você tenha um método que recebe um argumento formatado incorretamente. O código tenta ler o argumento, mas uma exceção é lançada. O método captura a exceção e lança um FormatException. Para melhorar a capacidade do chamador de determinar o motivo pelo qual uma exceção é lançada, às vezes é desejável que um método capture uma exceção lançada por uma rotina auxiliar e, em seguida, lance uma exceção mais indicativa do erro que ocorreu. Uma exceção nova e mais significativa pode ser criada, onde a referência de exceção interna pode ser definida como a exceção original. Esta exceção mais significativa pode então ser lançada para o chamador. Observe que, com essa funcionalidade, você pode criar uma série de exceções vinculadas que termina com a exceção que foi lançada primeiro. |
Message | Fornece detalhes sobre a causa de uma exceção. |
Source | Obtém ou define o nome do aplicativo ou o objeto que causa o erro. |
StackTrace | Contém um stack trace que pode ser utilizado para determinar o local onde ocorreu um erro. A stack trace inclui o nome do arquivo de origem e o número da linha do programa, caso as informações de depuração estejam disponíveis. |
A maioria das classes que herdam de Exception não implementam membros adicionais ou fornecem funcionalidade adicional, eles simplesmente herdam de Exception. Portanto, as informações mais importantes para uma exceção podem ser encontradas na hierarquia de classes de exceção, no nome da exceção e nas informações contidas na exceção.
Recomendamos que você lance e capture apenas objetos que derivam de Exception, mas você pode lançar qualquer objeto que derive da Object classe como uma exceção. Observe que nem todos os idiomas suportam lançar e capturar objetos que não derivam do Exception.