如果我有一个只与一个类有关的异常,哪种风格最好?
当我把它包装在我的班级时:
class Class {
//some stuff
throw MyException();
class MyException : Exception
{
//some stuff
}
}
或将其留在课堂之外
class Class {
//some stuff
throw MyException();
}
class MyException : Exception
{
//some stuff
}
使用一种或另一种解决方案有进展吗?这有什么编码标准吗?
答案 0 :(得分:4)
哪种风格最好?
这是设计问题(更进一步)。
这有什么编码标准吗?
本书"用C#编程 - 考试参考文献70-483"说那个
最好使用.NET Framework中定义的异常[除非有]开发人员使用您的代码[知道]知道这些异常,并且能够以比框架异常更具体的方式处理它们/ p>
问问自己是否有任何其他异常可能代表您想表示的异常,以及提取有关异常情况的信息所需的数据。
使用一种或另一种解决方案有进展吗?
第一个设计说该类将处理异常,因为它是一个代理,外部代码不知道发生了什么,但可能只会知道不同的输出依赖于抛出异常。 只有类,它的子类(受保护的)和它的" simblings" (内部)可以使用它。
第二个说世界将能够理解出了什么问题并对此采取了一些措施;其他类将改变自己的流程来处理错误。