是否可以在抽象类中实现接口并将实现的接口方法更改为abstract?
interface ITest
{
string GetData();
int ProcessData();
}
public abstract class MyAbstract:ITest
{
public int Process()
{
// some code
}
public abstract string GetData(); // Change the implemented method into abstract Is it Possible?
}
答案 0 :(得分:1)
是的,你可以做到。只需添加abstract关键字并删除实现。这显然是一个陷阱。任何继承自抽象类的类都必须自己实现GetData
。根据{{1}}的子项数量,这可能会导致大量工作和代码重复。
在您的情况下,MyAbstract
实现的接口声明了相关方法,您实际上可以完全删除MyAbstract
并依赖GetData
中此函数的声明。