하나의 속성을 포함하는 인터페이스가 있습니다. 해당 속성의 기본값을 설정해야합니다. 그렇게하는 방법?. 또한 Interface의 속성에 대한 기본 값을 갖는 것이 좋습니다. 아니면 여기서 추상 클래스를 사용하는 것이 적절한가? 사전인터페이스의 등록 정보에 대한 기본값을 설정 하시겠습니까?
4
A
답변
6
에서
고맙습니다 당신은 인터페이스의 속성에 기본 값을 설정할 수 없습니다. (단 기본값을 설정하고 다른 작업을 구현하지 않습니다) 인터페이스에 추가
사용 추상 클래스 :
public interface IA {
int Prop { get; }
void F();
}
public abstract class ABase : IA {
public virtual int Prop
{
get { return 0; }
}
public abstract void F();
}
public class A : ABase
{
public override void F() { }
}
1
인터페이스에는 구현을 포함하지 않습니다. 그들이하는 것은 국가 회원 서명뿐입니다.
인터페이스의 구현에는 임의의 속성에 대해 원하는 기본값을 자유롭게 사용할 수 있습니다.
예. abstract 클래스는 속성의 기본값을 반환 할 수 있습니다.
Petar, 인터페이스 클래스 이외에 abstract 클래스를 사용합니까? 인터페이스를 추상 클래스로 변경해야합니까? – smhnkmr
아니요. 인터페이스를 구현하는 추상 클래스를 사용한 다음 확장해야한다는 의미는 아닙니다. –