Непонимание концепций ООП. Наследник - C#
Формулировка задачи:
Здравствуйте, проблема такова: В родителе определен private List и две виртуальные функции которые добавляют в него элементы. В наследник не добавляются элементы.
Родитель Наследник
Объект наследник определен в ином классе ,память выделена. при вызове метода PushCard наследника не происходит добавление в List.
private List<Card> CardList;
protected GeneralDeck()
{
CardList = new List<Card>();
}
public virtual void PushCard(Card card)
{
CardList.Add(card);
}
public virtual void PushCard(string data)
{
var newData = data.StringToArray();
foreach (string card in newData)
{
PushCard(new Card(card[0].ToString(), Convert.ToInt32(card[1].ToString())));
}
}public PlayerDeck()
: base()
{}
public override void PushCard(Card card)
{
if (CountCard < SearchInformation.MaxCardForHand)
{
base.PushCard(card);
}
else
{
throw new CardException("Количество карт для игрока превысило допустимое значение");
}
}
public override void PushCard(string data)
{
Card cards = new Card((data[0]).ToString(), Convert.ToInt32((data[1]).ToString()));
PushCard(cards);
}Решение задачи: «Непонимание концепций ООП. Наследник»
textual
Листинг программы
public override string ToString()
{
string s = string.Empty;
for (int i = 0; i < myDeck.CountCard; i++)
{
Card card = myDeck.ViewValueCard(i);
s += card.ToString() + " ";
}
return s;
}