创建自定义例外的最佳做法是什么?

时间:2013-03-02 01:18:49

标签: c#

创建自定义异常时,最佳做法是为每个自定义异常创建单独的类文件,或将自定义异常附加到与其相关的类文件的末尾,或创建文件(例如,CustomExceptions。 cs)并在那里添加自定义例外?

3 个答案:

答案 0 :(得分:7)

每个文件一个类总是一个很好的规则。

其他基础知识:

  • 将您的例外标记为[Serializable]
  • 重载所有System.Exception构造函数
  • 不要从System.ApplicationException继承

答案 1 :(得分:1)

嗯......我会说你应该遵循每个文件一个类的规则,除非这个例外只是你班级中的“内部”功能。然后你可以在类中声明它。但是,如果以任何方式暴露给外界,请将其与班级分开。这种暴露也可以从这种例外无法与你的班级用户无关的实际可能性中看出。在这种情况下,我也会公开它,不会在里面声明它。

答案 2 :(得分:0)

正如其他人所说,每个文件规则一个类是理想的。另一种思考方式是,如果你有一个由许多模块组成的大型应用程序,你将拥有多个名称空间,并且保持某个类方法(或类/方法集)可以在其各自的名称空间中抛出的异常非常重要。这使得代码更具可读性,并且您的自定义异常背后的推理更容易为其他开发人员解读...或者在您忘记为什么使用其中一半的时候在6个月内为您服务:)