привет. у меня есть следующий класс:
public class Ship
{
public enum ValidShips
{
Minesweeper,
Cruiser,
Destroyer,
Submarine,
AircraftCarrier
}
public enum ShipOrientation
{
North,
East,
South,
West
}
public enum ShipStatus
{
Floating,
Destroyed
}
public ValidShips shipType { get; set; }
public ShipUnit[] shipUnit { get; set; }
public ShipOrientation shipOrientation { get; set; }
public ShipStatus shipStatus { get; set; }
public Ship(ValidShips ShipType, int unitLength)
{
shipStatus = ShipStatus.Floating;
shipType = ShipType;
shipUnit = new ShipUnit[unitLength];
for (int i = 0; i < unitLength; i++)
{
shipUnit[i] = new ShipUnit();
}
}
}
Я хотел бы унаследовать этот класс следующим образом:
public class ShipPlacementArray : Ship
{
}
это имеет смысл.
я хотел бы знать, как удалить некоторые функции базового класса?
например:
public ShipUnit[] shipUnit { get; set; } // from base class
Мне бы хотелось, чтобы это было:
public ShipUnit[][] shipUnit { get; set; } // in the derived class
У меня вопрос, как мне реализовать код, который полностью скрывает базовый класс shipUnit?
в противном случае я получу две реализации shipUnit в производном классе.
спасибо за ваше время.
ShipPlacementArray работает только с одним кораблем. но массив отражает направления, в которых можно разместить корабль.