【问题标题】:Compile-time error for NotSupportedException in subclass function子类函数中 NotSupportedException 的编译时错误
【发布时间】:2008-09-24 17:28:32
【问题描述】:

如果我有一个尚未实现基类提供的函数的子类,我可以重写该函数并让它抛出一个NotSupportedException。有没有办法为此生成编译时错误以避免仅在运行时遇到此错误?

更新:我无法将基类抽象化。

【问题讨论】:

    标签: c# exception inheritance


    【解决方案1】:

    您可以将基类抽象化:

    abstract class Foo
    {
        public abstract void Bar();
    }
    

    现在,任何子类都必须实现Bar(),否则无法编译。

    【讨论】:

      【解决方案2】:

      [Obsolete("This仍然需要实现", true/false)] 如果您不希望构建成功,则为 true,如果您只需要警告,则为 false

      有点骇人听闻……但它在编译时起到了警告的作用。

      【讨论】:

        【解决方案3】:

        将其抽象为无实现,无法在派生类中实现。

        【讨论】:

          猜你喜欢
          • 1970-01-01
          • 2015-05-05
          • 1970-01-01
          • 2015-03-12
          • 2023-03-09
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          相关资源
          最近更新 更多