1

在我的 C# 编程生涯中,每当我在 C# 中创建某个变量(或对象)时,我都会在编写 .(dot) Intellisense for this variable(object)时向我展示标准的 4 种方法。

例如我创建空类SomeClass

public class SomeClass
{

}

当我创建这个类的对象并调用一些方法时,即使这个类是空的,intellisense 也会向我展示这 4 个方法。

static void Main(string[] args)
{
    SomeClass sc = new SomeClass();
       +---------------+
    sc.|Equals         |
       |GetHashCode    |
       |GetType        |
       |ToString       |
       +---------------+
}

谁能解释我为什么?

谢谢。

4

2 回答 2

4

所有类都继承自System.Object- 其中包含这些方法。

于 2013-07-24T22:07:28.520 回答
3

每个类都隐式地从类继承Object,从System.Object命名空间继承。基本上,它是类型层次结构的根。

此外,除了您指出的这 4 种方法外,每个对象还FinalizeObject.

由于您的类继承自 Object,因此该语句将是有效的:

object sc = new SomeClass();
于 2013-07-24T22:22:11.423 回答