无法使用抽象get定义集合

本文关键字:get 定义 集合 抽象 | 更新日期: 2023-09-27 17:53:54

我有一个继承访问器的问题,我不能定义set方法。

我的代码:
public abstract class MotherOfDragons
{
    public abstract String DragonsName { get; }
}

继承的类:

public class Drogon : MotherOfDragons
{
    public override String DragonsName { get; set; }
}
public class Viserion : MotherOfDragons
{
    public override String DragonsName { get; }
}

对于Viserion来说效果很好但是对于Drogon我有错误CS0546

'accessor':无法重写,因为'property'没有可重写的set accessor

MotherOfDragons类中不添加set访问器是否可以解决此错误?我想保持这个字段只读,除了一种情况。

谢谢

无法使用抽象get定义集合

谢谢@sircodesalot

我终于做到了:

public class Drogon : MotherOfDragons
{
    private String dragonsName;
    public override String DragonsName { get { return dragonsName; } }
    public void Change_DragonsName(String name)
    {
        dragonsName = name;
    }
}

它工作,不像set,但它工作。