C#'base' 不是指没有显式继承的基类吗?

1 c# inheritance tostring

class MyClass {
    public MyClass() {}

    public override string ToString() {
        return String.Format(
            "BaseType:\t{0}\nbase.toString:\t{1}",
            this.GetType().BaseType.ToString(),
            base.ToString());
    }
}

static void Main(string[] args) {
    MyClass obj = new MyClass();
    Console.WriteLine(obj.ToString());
}
Run Code Online (Sandbox Code Playgroud)

结果是:

BaseType: System.Object
base.toString: TestesNET.Program+MyClass
Run Code Online (Sandbox Code Playgroud)

为什么不base.toString显示System.Object

附加说明:Java 具有相同的行为。

pwr*_*imo 5

object的实现.ToString()GetType().ToString()。显然,GetType()返回类的类型

文档中查看更多

Object.ToString 方法的默认实现返回对象类型的完全限定名称。