이 코드를 작성했습니다.일반 인터페이스 구현
public interface IMusicInstrument
{
string InstrumentType(int InstrumentId);
}
public interface IGuitar<T, K> where T : GuitarBase where K : IMusicInstrument
{
string Name { get; set; }
string GetType(T t);
}
public class ElectricGuitar : GuitarBaseExtended, IGuitar<ElectricGuitar, IMusicInstrument>
{
public string Name { get; set; }
public string GetType(ElectricGuitar t)
{
return "The electric guitar is: " + t.Name;
}
}
나는 생각했다 그 IMusicInstrument 내가 InstrumentType라는 메소드를 구현하는 것이 필요하기 때문에 그 내가 컴파일 타임 오류를 얻을 것 HTE 전기 기타 클래스에 구현되어 내 IGuitar 인터페이스의 매개 변수로 포함 할 때. 그러나 나는 그렇지 않습니다.
내가 잘못 구현하고 있습니까?
내 목표는 IMusicInstrument를 일반 유형의 IGuitar 인터페이스에 구현하여 IMusiInstrument와 IGuitar의 요구 사항이 모두 적용되도록하는 것입니다.
아이디어가 있으십니까? 당신은 ElectricGuitar
이 IMusicInstrument
구현 말했다하지 않은