应用程序异常和系统异常的区别

17
2个回答

24

最初,它们旨在区分BCL定义和用户定义的异常。ApplicationException被设计为所有用户定义异常的基类。想法是它将为您提供一种清晰的方式来区分框架异常和自定义异常。

不幸的是,从一开始就没有执行这个策略,因此BCL中存在许多违反此规则的矛盾之处。目前的建议是不要从这些异常继承。

以下是有关这个主题的不错的博客文章:


2

所有的异常都源自于Exception基类。异常可以由程序生成,也可以由系统生成。应用程序异常是所有应用程序特定异常类的基类。它派生自Exception但不提供任何扩展功能。您应该从Application Exception派生自定义的应用程序异常。当我们想要定义用户定义的异常时,使用应用程序异常。而系统异常则是由.NET定义的所有异常。


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接