-1
다음 코드는 나에게인터페이스 상속 이해할 수없는
오류 2 유형 'Series.AB가'이미 내가 생각
interface IA
{
void A();
}
interface IB
{
void B();
}
interface IAB : IA, IB
{
void A();
void B();
}
class AB : IAB
{
IA A;
IB B;
public AB(IA _a, IB _b)
{
A = _a;
B = _b;
}
public void A()
{
throw new NotImplementedException();
}
public void B()
{
throw new NotImplementedException();
}
}
'B'에 대한 정의가 포함되어 오류를 줄 AB 클래스 인스턴스를 다음과 같이 사용할 수 있습니다.
IA A = 새 AB(); 또는 IB B = 새로운 AB(); 또는 IAB ab = 새 AB();
여기서 일어나는 일을 이해할 수 없습니다. 누구든지이 예외가 발생하는 이유를 설명하십시오.
추적 할 수없는 가망 중복 : http://stackoverflow.com/questions/2371178/inheritance-from-multiple-interfaces-with-the-same-method-name – Rumpelstinsk
이 오류는 정말 인터페이스 및 상속 관련이 없습니다. 같은 이름의 메소드와 필드가 있습니다. 'B'는 필드와 메소드의 이름입니다 ('A'도 마찬가지입니다). 그건 허용되지 않습니다. –
찾을 수있는 가장 가까운 복제본 : [이미 정의가 포함되어 있습니다] (http://stackoverflow.com/questions/13770014/already-contains-a-definition-forget-set-method). 어느 쪽의 질문이라도 OP는 그것이 다른 것이라고 생각한다. – Sinatr