7

假设您创建了一个通用 Object 变量并将其分配给特定实例。如果你执行 GetType(),它会得到类型 Object 还是原始类的类型?

4

3 回答 3

3

是的。

你也可以这样做:

object c = new FooBar();
if(c is FooBar)
     Console.WriteLine("FOOBAR!!!");
于 2008-11-24T23:14:55.353 回答
3

简短回答:GetType() 将返回特定对象的类型。我做了一个快速应用程序来测试这个:

        Foo f = new Foo();
        Type t = f.GetType();

        Object o = (object)f;
        Type t2 = o.GetType();

        bool areSame = t.Equals(t2);

是的,它们是一样的。

于 2008-11-24T23:14:55.887 回答
0

调用 GetType() 将调用 ACTUAL 类型。如果您想知道基本类型,可以调用 GetType().BaseType

于 2008-11-24T23:15:48.240 回答