C# typeof 与GetType()的区别
Posted Herzog
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了C# typeof 与GetType()的区别相关的知识,希望对你有一定的参考价值。
C#中Type类的介绍:https://msdn.microsoft.com/zh-cn/library/system.type(VS.80).aspx
C#中任何对象都具有GetType()方法,它的作用和typeof()相同,返回Type类型的当前对象的类型。typeof(x)中的x,必须是具体的类名、类型名称等,不可以是变量名称;GetType()是基类System.Object的方法,因此只有建立一个实例之后才能够被调用
两者区别:
1、Typeof是运算符而是方法
2、GetType()是基类System.Object的方法,因此只有建立一个实例之后才能够被调用(初始化以后)
3、Typeof的参数只能是int,string,String,自定义类型,且不能是实例
4、GetType()和typeof都返回System.Type的引用.
5、TypeOf():得到一个Class的Type
6、 GetType():得到一个Class的实例的Type
以上是关于C# typeof 与GetType()的区别的主要内容,如果未能解决你的问题,请参考以下文章
使用 GetType() 和 typeof() 获取 Type 有啥区别? [复制]
GetType、typeof 和 is,处理 null 和转换 [重复]