2011-12-30 4 views
-1

.NET Frameworkのすべてのクラスの究極の基本クラスがSystem.Objectと呼ばれるのはなぜですか?これは、クラスインスタンス(オブジェクト)ではないため、System.Classなどと呼ばれる必要があります。.NET Frameworkのすべてのクラスの究極の基底クラスがSystem.Objectと呼ばれるのはなぜですか?

+1

オブジェクト指向プログラミングのようにオブジェクトがあるかもしれません... – Matten

+0

私はあなたの質問に答えてくれました。私はそれを理解することができましたが、あなた自身をはっきりと説明することにもっと力を入れれば助けになります。良い質問を書いている過程で、あなたはその答えを見つけた可能性があります。良い質問を書くためのヒントについては、http://tinyurl.com/so-hintsを参照してください。 –

答えて

4

すべてのオブジェクトがオブジェクトであるため、System.Objectと呼ばれています。たとえば、StringのインスタンスはObjectですが、Stringはクラスではありません。文字列はクラスですが、それは別の問題です。

タイプを表すSystem.Typeがあるため、System.Typeのインスタンスには、そのタイプのプロパティやメソッドなどが分かります。だから、のようなものを使用することができます。

Type stringType = typeof(string); 
// Find out all the members of System.String using stringType... 

しかし、文字列自体にGetPropertiesGetMethodsなどを呼び出すことができることは適切ではない - 文字列は、文字だけのシーケンスであるため。

関連する問題