ネストされたクラスを使いこなし、そのタイプの名前をコンソールウィンドウに出力すると、何か不思議に思った。私は誰かが私のためにそれを少し説明できるかどうか疑問に思っていた。メインクラスでGetType()
を呼び出すと、それは関連する名前空間の後のクラスの名前であったものを返します。ネストされたクラス.GetType()
Namespace.Namespace.ClassNameEnclosing + ClassNameNested.
なぜそれが単にドット表記として返されません。しかし、私は値がこのとして返さ私が手に入れ子になったクラスの型を返すように囲んでいるクラスの中から関数を呼び出すとき、すなわちNamespace.Namespace.Classname
。なぜ+記号ですか?私はちょうどこの記法を引き起こすバックグラウンドで起こっていることについて興味があります。
お返事ありがとうございます。クラスはそれ自身のクラスですが、それ自体の名前空間はありません。プラス記号は、基本的には、この型が囲むクラスの名前空間に追加されていると述べていますか? – CSharpened
@CSharpened:はい、そのネームスペースです。たとえば、 'System.Collections.Generic.SortedDictionary .ValueCollection'の名前空間を見れば、それはちょうど' System.Collections.Generic'であることがわかります。 –
素晴らしい返信です。ありがとう。それはそれを非常に明確にします。 – CSharpened