gpt4 book ai didi

抽象基类中的 c# 属性

转载 作者:太空狗 更新时间:2023-10-29 20:44:23 31 4
gpt4 key购买 nike

我有一个我无法解决的奇怪问题。当我尝试编译以下片段时出现此错误:

“AbstractClass”未实现接口(interface)成员“Property”(编译器错误 CS0535)

联机帮助告诉我将我的 AbstractClass 抽象化,它就是这样。谁能告诉我哪里出错了?

干杯吕迪格

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";
}
}
}

最佳答案

您的 AbstractClass 需要从 IBase 接口(interface)为 Property 提供实现,即使它本身只是抽象:

public abstract class AbstractClass : IBase
{
public override string ToString()
{
return "I am abstract";
}

public abstract string Property { get; }
}

更新:Luke 是正确的,具体实现需要指定 Property 是一个覆盖,否则你会得到一个“不实现继承的抽象成员”错误:

public class ConcreteClass : AbstractClass
{
public override string Property {
get {
return "I am Concrete";
}
}
}

关于抽象基类中的 c# 属性,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1340789/

31 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com