나는 항상 내 마음 속에이 질문을 가지고있다. 인터페이스는 구현 자 클래스가 특정 메서드 나 속성 또는 이벤트를 갖도록합니다. 그러나 구현 자 클래스가 특정 생성자를 갖도록 강제 할 수없는 이유는 무엇입니까?왜 인터페이스에 생성자가 있습니까?
예:
interface IX
{
ctor(int val);
string Foo();
}
을 .. 그리고이 IX
를 구현하는 모든 클래스를 매개 변수로서 int
와 생성자를 가져야한다는 것을 의미한다.
사용법은 간단하지 않습니다. 이는 클래스가 IX
인터페이스를 구현 한 경우 개발 팀의 아무도 해당 생성자를 자신의 클래스에 넣는 것을 잊지 않았 음을 보증합니다. 이러한 클래스가 반영 또는 Activator
에 의해 인스턴스화되는 상황을 고려하십시오.
[생성자 시그니처를 정의하는 인터페이스] 가능한 복제본 (0120) (영문) – Jonesopolis
인터페이스에서 생성자를 어떻게 사용합니까? – SLaks