Per generare eccezioni, di solito utilizzo classi di eccezioni integrate, ad esempio ArgumentNullExceptione NotSupportedException. Tuttavia, a volte ho bisogno di usare un'eccezione personalizzata e in quel caso scrivo:
class SlippedOnABananaException : Exception { }
class ChokedOnAnAppleException : Exception { }
e così via. Poi lancio e prendo questi nel mio codice. Ma oggi mi sono imbattuto nella ApplicationExceptionclasse - dovrei usarlo invece? Per cosa è?
Sembra inefficiente avere molte classi di eccezione effettivamente identiche con nomi diversi (di solito non ho bisogno di alcuna funzionalità individuale). Ma non mi piace l'idea di catturare un generico ApplicationExceptione di dover usare un codice aggiuntivo per determinare quale fosse l'errore.
Dove dovrebbe ApplicationExceptionadattarsi al mio codice?