我有一个Class,它的一个属性是另一个接口, 像下面的例子一样:
public interface ICar
{
int ID { get; set; }
ICarInfo Info { get; set; }
}
public interface ICarInfo
{
Motor Motor { get; set; }
Wheels Wheels { get; set; }
String Category{ get; set; }
}
以及ICarInfo的两个实现:
public Class SUVInfo : ICarInfo
{
Motor Motor { get; set; } = new Motor("SUV");
Wheels Wheels { get; set; } = new Wheels("SUV");
String Category{ get; set; } = "SUV";
}
public Class CompactInfo : ICarInfo
{
Motor Motor { get; set; } = new Motor("Compact");
Wheels Wheels { get; set; } = new Wheels("Compact");
String Category{ get; set; } = "Compact";
}
使用ICarInfo的实现,我无法实现ICar的一个类,例如:
public Class SUV : ICar
{
int ID { get; set; }
SUVInfo Info { get; set; }
}
SUVInfo是ICarInfo,但出现以下错误:
“ SUV”未实现接口成员“ ICar.Info”。 'SUV.Info' 无法实现“ ICar.Info”,因为它没有匹配项 返回类型为“ ICarInfo”。