【发布时间】:2009-05-11 13:04:32
【问题描述】:
我想知道System.ApplicationException 和System.Exception 之间的区别。
谁能解释一下
【问题讨论】:
我想知道System.ApplicationException 和System.Exception 之间的区别。
谁能解释一下
【问题讨论】:
最初它们旨在将 BCL 定义和用户定义的异常分开。 ApplicationException 旨在成为所有用户定义异常的基类。这个想法是它可以为您提供一种清晰的方式来区分框架异常和自定义异常。
很遗憾,该政策并未从一开始就强制执行,因此 BCL 中的该规则存在许多矛盾之处。当前的建议是不要继承这些异常。
这是一篇关于该主题的不错的博客文章:
【讨论】:
所有异常都派生自异常基类。可以以编程方式生成异常 或者可以由系统生成。 Application Exception 作为所有应用程序的基类 特定的异常类。它派生自 Exception 但不提供任何扩展功能。 您应该从 Application Exception 派生自定义应用程序异常。 当我们想要定义用户定义的异常时使用应用程序异常。而系统 例外都是由.NET定义的
【讨论】: