C# TypeOf 和GetType的区别
相同点:两者返回的都是 System.Type 区别TypeOf是一个运算符,只能针对类型进行运算。 GetType是一个集成自Object的方法,任何一个object的变量都可以调用。 以下来自msdn: C# typeof 运算符(在 Visual Basic 中为 GetType 运算符,在 Visual C++ 中为 typeid 运算符)返回一个 Type 对象。 表示某个类型是唯一的 Type 对象;即,两个 Type 对象引用当且仅当它们表示相同的类型时,才引用相同的对象。 这允许使用参考等式来比较 Type 对象。 这个类是线程安全的;多个线程可以同时从此类型的一个实例读取数据。 Type 的实例可表示以下任何类型: 类 值类型 数组 Interfaces 指针 枚举 构造泛型类型和泛型类型定义 构造泛型类型、泛型类型定义和泛型方法定义的类型实参和类型形参 可以通过下列方式获得对与某个类型关联的 Type 对象的引用: Object . . :: . GetType 方法返回表示实例类型的 Type 对象。 静态 GetType 方法返回 Type 对象,该对象表示由其完全限定名指定的类型。 Module . . :: . GetTypes 、 Module . . :: . GetType 和 Module . . :: . FindTypes 方法返回 Type