我对通用继承方法有疑问。通用继承方法
说了一个例子,我有有一个基管理类ListManager:
public class ListManager<T>
{
private List<T> m_list;
public ListManager()
{
m_list = new List<T>();
}
public int Count
{
get { }
}
public void Add(T aType)
{
}
public bool DeleteAt(int anIndex)
{
}
public string[] ToStringArray()
{
}
public List<string> ToStringList()
{
}
public bool CheckIndex(int index)
{
}
}
然后一个动物管理器类继承上面的列表管理器类:
public class AnimalManager : ListManager<Animal>
{
private List<Animal> AnimalList; //list
public AnimalManager()
{
AnimalList = new List<Animal>();
}
public void Add(Animal animal) // Exactly the same as base class method but with different method "content".
{
animal.Id = ++animalCounter; //increases the id by one.
AnimalList.Add(animal);
}
public bool IsIndexValid(int index)
{
return ((index >= 0) && (index < AnimalList.Count));
}
public Animal GetElementAtPosition(int index)
{
if (IsIndexValid(index))
return AnimalList[index];
else
return null;
}
public int ElementCount
{
get { return AnimalList.Count; }
}
public bool DeleteAt(int anIndex)
{
return true;
}
}
我该怎么做继承ListManager的方法?它需要继承的方法,但在方法内部具有不同的“内容”。我知道只要一个类继承了另一个类,它们就继承了它们的基类,但是如果每个管理类都处理不同的列表框,但是具有完全相同的方法头,我该怎么办。
例如,每一个管理器类有Add
:
public void Add(T aType)
{
}
但我的动物管理员需要添加到动物名单:
public void Add(Animal animal)
{
AnimalList.Add(animal);
}
我的从业人员管理者需要添加到EmployeeList的:
public void Add(Employee employee)
{
Employeelist.Add(employee);
}
他们都有刚好是相同的方法,但具有不同的“内容”。
你的标题很差。 _about_“泛型继承方法”是什么? –