C#和VB.NET中有一些和类型相关的方法和关键字,初学者刚开始理解可能会有点混乱,这里整理一下,希望对初学者有所帮助。如果大家有 需要补充的内容,欢迎回复。
1.GetType
(1)Object.GetType()
该方法是所有对象都有的方法,MSDN中的解释是“获取当前实例的 Type。”。该方法的返回值是System.Type类型的实例,表示 当前实例的确切运行时类型。
例如:
C#:
int number = 3;
System.Type t = number.GetType();
Console.WriteLine(t.FullName); //输出:System.Int32
VB.NET:
Dim number as Integer = 3
Dim t As System.Type = number.GetType()
Console.WriteLine(t.FullName) '输出:System.Int32
(2)VB.NET中的GetType方法
参考MSDN中的解释:返回指定类型的 Type 对象。Type 对象提供有关类型的信息,如类型的属性、方法和事件。
用法:GetType(typename),其中typename是需要获取其信息的类型的名称。
例如:
Dim t As System.Type = GetType(Integer)
Console.WriteLine(t.FullName) '输出:System.Int32
(3)Type.GetType系列方法
System.Type类型中的GetType方法一共有4个,其中不带参数的GetType()是继承自Object的实例方法,其他三个是静态方法(C#中为static ,VB.NET中为Shared)。实例方法不用介绍了,就是Object.GetType()。静态方法是通过类型名称的字符串获取System.Type。MSDN中的解释有 一大篇,这里只给出简单示例:
C#:
System.Type t = Type.GetType("System.Int32");
Console.WriteLine(t.FullName); //输出:System.Int32
VB.NET
Dim t As System.Type = Type.GetType("System.Int32");
Console.WriteLine(t.FullName) '输出:System.Int32
注意这里的类型名称必须是包含命名空间的全名,即System.Type的FullName,不能是C#或者VB.NET中的类型名称,如C#中的 "int"或者VB.NET中的"Integer"