是否有声明派生属性的方法?
public class Vehicle {
public VehicleType Type { get; set; }
}
public class Car : Vehicle {
public CarType Type { get; set; }
}
public class VehicleType {}
public class CarType : VehicleType {}
这样当我调用 Car.Type;我只看到车型?
最佳答案
你不能那样做。 Type
属性必须在基类和派生类中具有相同的类型。
一种方法是使用泛型:
public class Vehicle<TVehicleType> where TVehicleType: VehicleType {
public TVehicleType Type { get; set; }
}
public class Car : Vehicle<CarType> { }
Car car = new Car();
car.Type = new CarType();
关于c# - 派生属性?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22132117/