둘 다 정적 변수 인 XmlTag를 포함하는 두 개의 클래스가 있다고 가정합니다. 두 번째 클래스는 첫 번째 클래스에서 상속됩니다. 사용중인 형식에 따라 XmlTag를 얻어야하는 템플릿 메서드가 있습니다. 유형 인스턴스를 만들 필요없이이 작업을 수행하는 가장 좋은 방법은 무엇입니까? 여기에 컴파일되지 않는 예제가 있는데, 이는 제가 말하고자하는 것을 설명해 주어야합니다.정적 변수에 액세스하는 템플릿 메서드
class A{
public static readonly string XmlTag = "AClass";
}
class B : A {
public static readonly string XmlTag = "BClass";
}
이 메서드는 현재 유효하지 않습니다. 정적 매개 변수는 형식 매개 변수에서 명백하게 액세스 할 수 없습니다.
string GetName<T>(T AClass) where T : A
{
return T.XmlTag;
}
당신의 대답을 당신을 감사하십시오. 귀하의 기사는 흥미로운 읽을 거리였습니다. 내 문제는 상당히 간단하지만 좋은 해결책을 생각하는 데 어려움을 겪고있다. 각자 고유 한 xml-tag 상수를 가진 여러 개의 하위 클래스가있다. 나는 이러한 자식 클래스 중 하나를 받아들이고 해당 클래스의 인스턴스를 XmlNode에서로드하는 일반 클래스 Load()를 다른 클래스에 가지고 있습니다. Load()는 사용중인 유형에 따라 xml 태그를 가져와야 찾을 XML 태그를 알 수 있습니다. – Mav3rick
하위 클래스는 XML 태그가 발견 된 후에 만 인스턴스화됩니다. – Mav3rick
여기에 몇 가지 유형이 있습니까? 두? 세? 수백? 또는 잠재적으로 무한대의 숫자입니까? –