源码网商城,靠谱的源码在线交易网站 我的订单 购物车 帮助

源码网商城

c#中GetType()与Typeof()的区别

  • 时间:2020-05-23 11:18 编辑: 来源: 阅读:
  • 扫一扫,手机访问
摘要:c#中GetType()与Typeof()的区别
案例1:
[u]复制代码[/u] 代码如下:
int i = 5; Console.WriteLine(i.GetType());//System.Int32 var x = 127.25m; Console.WriteLine(x.GetType());//System.Decimal
案例2:
[u]复制代码[/u] 代码如下:
namespace _2011._12._15 {     class Program     {         static void Main(string[] args)         {             Test testone = new Test();             string s = testone.GetType().ToString();             Console.WriteLine(s);//_2011._12._15.Test  命名空间的Test类         }     }     class Test     {         } }
Typeof()返回的是类名的对象,也可以返回类名,也可以返回特定类内部的方法和字段
[u]复制代码[/u] 代码如下:
namespace _2011._12._15 {     class Program     {         static void Main(string[] args)         {             Test testone = new Test();             string s = testone.GetType().ToString();             Console.WriteLine("GetType():");             Console.WriteLine(s);//_2011._12._15.Test  命名空间的Test类             Type type = typeof(Test);             Console.WriteLine("Typeof():");             Console.WriteLine(type);//_2011._12._15.Test  命名空间的Test类             Console.WriteLine();            MethodInfo[] methodinfo = type.GetMethods();            Console.WriteLine(methodinfo.GetType());//System.Reflection.MethodInfo[]             foreach (var i in methodinfo)             {                 Console.WriteLine(i);//输出Test类的所有方法及继承Object的实例方法             }             Console.WriteLine();             Console.WriteLine();             Console.WriteLine();             Console.WriteLine();             MemberInfo[] memberinfo = type.GetMembers();             Console.WriteLine(memberinfo.GetType());             foreach(var i in memberinfo)             {                 Console.WriteLine(i);//输出Test类字段和System.type类型             }         }     }     class Test     {         private int age;         public string name;         public void speaking()         {             Console.WriteLine("Welcome to cnblog!");         }         public void writing()         {             Console.WriteLine("Please writing something!");         }     } }
运行结果:
[u]复制代码[/u] 代码如下:
GetType(): _2011._12._15.Test Typeof(): _2011._12._15.Test System.Reflection.MethodInfo[] Void speaking() Void writing() System.Type GetType() System.String ToString() Boolean Equals(System.Object) Int32 GetHashCode() System.Reflection.MemberInfo[] Void speaking() Void writing() System.Type GetType() System.String ToString() Boolean Equals(System.Object) Int32 GetHashCode() Void .ctor() System.String name
  • 全部评论(0)
联系客服
客服电话:
400-000-3129
微信版

扫一扫进微信版
返回顶部