C#: 我想写一个抽象类,其中包含一个对字符串列表起作用的方法。该名单将不会在这个班级实施。 然后我想编写另一个继承自抽象类并实现字符串列表的类。C#:Abstract List <string>
class AbstractClass
{
protected abstract List<string> myList; // To be implemented in a child class
void ShowList()
{
foreach (string member in myList)
{
Console.WriteLine(member);
}
}
}
class HelloWorld : AbstractClass
{
new private List<String> myList = new List<string>()
{
"Hello", "World"
};
}
现在C#告诉我“修饰符摘要在字段上无效,请尝试使用属性。” 我似乎没有得到大局。我只想要一个占位符/对基本父类中的列表的引用。这是如何完成的?
检查此链接:http://stackoverflow.com/questions/7490870/virtual-abstract-fields-in-c-sharp –
一个字段被认为是私人的。这意味着你不会在继承自基类的类中看到它,因此它不能实现它的字段版本。另一件事是 - 领域只是为了保存数据,你不能“实现”它们。尝试使用虚拟/抽象属性。 –
为什么它需要在派生类中“实现”。您可以在抽象类中定义该字段,然后在派生类中对其进行初始化。 – PaulF