Я заметил кое-что любопытное, когда возился с вложенными классами и выводил имя типа в окно консоли. Мне было интересно, может ли кто-нибудь объяснить это мне. При вызове GetType()
в основном классе он возвращает то, что я ожидал бы, это было имя класса после соответствующих пространств имен. т.е. Namespace.Namespace.Classname
Вложенный класс .GetType()
Однако, когда я вызываю функцию из класса ограждающей вернуть тип вложенного класса я получаю возвращенное значение, как это:
Namespace.Namespace.ClassNameEnclosing + ClassNameNested.
Почему это не просто возвращается в виде точечной нотации , Почему символ +? Мне просто интересно, что происходит на заднем плане, что вызывает эту нотацию.
Спасибо за ответ. Я вижу, что, хотя класс является классом по своему усмотрению, у него нет собственного пространства имен? Символ «плюс» в основном утверждает, что этот тип является дополнением к пространству имен охватывающего класса? – CSharpened
@CSharpened: Да, это его пространство имен - если вы посмотрите на пространство имен (скажем) 'System.Collections.Generic.SortedDictionary .ValueCollection', вы обнаружите, что это просто' System.Collections.Generic'. –
Отличный ответ. Благодарю. Это очень ясно. – CSharpened