public class SuperCar: Car
{
public bool SuperWheels { get {return true; } }
}
public class Car
{
public bool HasSteeringWheel { get {return true;} }
}
Как установить базовый класс для производного суперкара?Производный и базовый класс, могу ли я установить базу явно?
Например, я хочу просто набор SuperCars базовый класс, как это:
public void SetCar(Car car)
{
SuperCar scar = new SuperCar();
car.Base = car;
}
В принципе, если у меня есть объекты автомобилей, я не хочу, чтобы вручную перебирать все имущество автомобиля для того, чтобы настроить SuperCar oject, который, я думаю, является единственным способом, которым вы можете это сделать, но если вы можете сделать это, это будет намного лучше.
** No. ** Краткая причина: есть * нет отдельный базовый объект *. '(object) this == (object) base' всегда истинно. Существуют способы выполнения клонирования/копирования путем отражения (и других средств). Возможно, опишите, что действительно нужно :) –
Хотя вопрос не задает вопрос об отражении (или конструкторе-копии) как есть, я добавил теги, чтобы, надеюсь, создать более интересный список связанных вопросов. Наслаждаться. (http://stackoverflow.com/questions/3072518/can-reflection-be-used-to-instantiate-an-objects-base-class-properties выглядит особенно интересным и, возможно, дублирующим) –
Я подозреваю, что вы предполагаете, что C# является языком * наследования прототипа. Это не. Есть ли у вас опыт программирования в JavaScript случайно? –