Rüd*_*ger 6 c# properties interface abstract
我有一个我无法解决的奇怪问题.当我尝试编译以下剪切时,我收到此错误:
'AbstractClass'没有实现接口成员'Property'(编译器错误CS0535)
在线帮助告诉我使我的AbstractClass抽象,它是.谁能告诉我哪里出错了?
干杯Rüdiger
public interface IBase {
string Property { get; }
}
public abstract class AbstractClass : IBase
{
public override string ToString()
{
return "I am abstract";
}
}
public class ConcreteClass : AbstractClass
{
string Property {
get {
return "I am Concrete";
}
}
}
Run Code Online (Sandbox Code Playgroud)
dah*_*byk 20
您AbstractClass需要Property从IBase界面提供实现,即使它只是抽象本身:
public abstract class AbstractClass : IBase
{
public override string ToString()
{
return "I am abstract";
}
public abstract string Property { get; }
}
Run Code Online (Sandbox Code Playgroud)
更新: Luke是正确的,具体实现需要指定Property是一个覆盖,否则你将得到一个"不实现继承的抽象成员"错误:
public class ConcreteClass : AbstractClass
{
public override string Property {
get {
return "I am Concrete";
}
}
}
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
14237 次 |
| 最近记录: |