我有一个A类,一个继承的B类,另一个继承自B的C类。
在我的类A中我只想定义一些方法但不实现它,如果我将它声明为abstract,我必须在我继承的类中实现它,我不想要它。 我想在我的C类
中实现这些方法该程序是否正确?
public class A
{
public virtual string getValue()
{
throw new NotImplementedException();
}
....
}
第二课
public class B: A {...}
第三课
public class C:B {
public override string getValue()
{
...
//return a string
}
或者我必须使用界面?
答案 0 :(得分:0)
您可以将该方法标记为抽象,并将B抽象化,因此只有C必须实现getValue
。
您当然可以使用界面,这取决于您实际在做什么。
如果您坚持使用B的实例而不使用界面,我会使用NotSupportedException
代替:
public virtual string getValue()
{
throw new NotSupportedException();
}