중첩 된 클래스를 둘러보고 해당 유형의 이름을 콘솔 창에 출력 할 때 궁금한 점이 있습니다. 나는 누군가가 나를 위해 그것을 약간 설명 할 수 있는지 궁금해하고 있었다. 기본 클래스에서 GetType()
을 호출하면 예상되는 결과를 반환합니다.이 이름은 관련 네임 스페이스 뒤에있는 클래스의 이름입니다.중첩 클래스 .GetType()
Namespace.Namespace.ClassNameEnclosing + ClassNameNested.
이유는 단순히 점 표기법으로 반환되지 않습니다 : 내가 중첩 된 클래스의 유형을 반환 둘러싸는 클래스 내에서 함수를 호출 할 때 즉 Namespace.Namespace.Classname
는 그러나, 나는 값이 반환받을 . 왜 + 기호인가? 나는이 표기법을 유발하는 배경에서 진행되고있는 일에 대해서 궁금해합니다.
응답 해 주셔서 감사합니다. 클래스가 자체적으로 클래스이지만 자체 네임 스페이스가 없다는 것을 알 수 있습니까? 더하기 기호는 기본적으로이 유형이 둘러싼 클래스의 네임 스페이스에 추가 된 것이라고 말합니다. – CSharpened
@CSharpened : 네, 그 네임 스페이스입니다. (System.Collections.Generic.SortedDictionary .ValueCollection'의 네임 스페이스를 보면 'System.Collections.Generic'이라는 것을 알 수 있습니다. –
우수 답변입니다. 감사. 그것은 그것을 아주 분명하게 만듭니다. – CSharpened