lời chào. tôi có lớp sau:C# Thừa kế lớp
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();
}
}
}
tôi muốn kế thừa lớp này như sau:
public class ShipPlacementArray : Ship
{
}
này có ý nghĩa.
điều tôi muốn biết là làm cách nào để xóa một số chức năng nhất định của lớp cơ sở?
ví dụ:
public ShipUnit[] shipUnit { get; set; } // from base class
tôi muốn nó là:
public ShipUnit[][] shipUnit { get; set; } // in the derived class
câu hỏi của tôi là làm thế nào để tôi thực hiện các mã mà giấu đi những lớp cơ sở shipUnit hoàn toàn?
nếu không tôi sẽ kết thúc với hai triển khai shipUnit trong lớp dẫn xuất.
cảm ơn bạn đã dành thời gian.
ShipPlacementArray chỉ giao dịch với một tàu. nhưng mảng phản ánh hướng mà tàu có thể được đặt tại.
Wow có vẻ như một số người đã đến và từ chối câu trả lời của mọi người. – AaronLS