假设我有一堂课:
public class Farm
{
IList<Animal> Animals { get; set; }
public Farm(string type)
{
if (type == "Walrus")
Animals = new List<Walrus>();
if (type == "Giraffe")
Animals = new List<Giraffe>();
}
}
而且有两种动物:
public class Animal
{
}
public class Walrus : Animal
{
}
public class Giraffe : Animal
{
}
并且说一个农场只能养殖海象或长颈鹿。如何编写代码,以便如果将“Walrus”传递给 Farm 构造函数,则 IList 变为海象列表,但如果传递“Giraffes”,则 IList 变为 Giraffes 列表的列表。
所以以上不起作用。有谁知道如何实施