自定义异常和减少重复代码

本文关键字:代码 自定义异常 | 更新日期: 2023-09-27 18:16:08

我决定在代码中使用exception来传递错误处理。我发现每次我想创建一个新的异常时,我都要复制代码。这些类没有什么特别的,只包含一个消息。但是在处理它们时,我已经开始依赖类型安全。有没有一种方法来提供一个新的异常类类型,而不必重新实现构造函数?

[Serializable]
class MyNewException : MyBaseException
{
    public MyNewException (String tMsg)
        : base(tMsg)
    {
    }
    public MyNewException (String tMsg, Exception tInnerEx)
        : base(tMsg, tInnerEx)
    {
    }
}
对于我想定义的每种不同类型的异常,上面的代码都要重复多次。

自定义异常和减少重复代码

不幸的是,没有,必须提供构造函数,因为它们不是继承的。

此外,除非您正在捕获这些特定的异常并在它们发生时执行显式处理,否则我建议使用包含您可能需要的附加信息的泛型异常。但是,这可能不适用于您的情况。