要抛出异常,我通常使用内置的异常类,例如ArgumentNullException
和NotSupportedException
。但是,有时我需要使用自定义异常,在这种情况下,我会写:
class SlippedOnABananaException : Exception { }
class ChokedOnAnAppleException : Exception { }
等等。然后,我将它们抛出并捕获到我的代码中。但是今天我遇到了
ApplicationException
类-我应该改用它吗?这是为了什么?拥有许多名称完全不同的有效相同的Exception类似乎没有效率(我通常不需要任何单独的功能)。但是我不喜欢捕获通用的
ApplicationException
,而不得不使用额外的代码来确定错误的想法。ApplicationException
应该在哪里适合我的代码? 最佳答案
根据msdn中的remarks:
从Exception
派生它们。而且,只要有必要,我也不会为您的案例创建新的异常(exception)情况。如果遇到框架中已经存在异常的情况,请使用该异常,否则,请自行滚动。