得到类型的方法?gettype() 和 typeof()?

zjpixyniannian 2006-12-15 02:13:54
一个类 Class A

Type t = Type.GetType("A")

Type t = typeof(A)

一样吗?
...全文
291 6 打赏 收藏 转发到动态 举报
写回复
用AI写文章
6 条回复
切换为时间正序
请发表友善的回复…
发表回复
danjiewu 2007-01-10
  • 打赏
  • 举报
回复
Type t = typeof(A)与Type.GetType("A")是不等价的。
Type.GetType("A")只在当前的Assembly或默认的Assembly里找,可能会找不到Type。

另外Type.GetType(string name)是个static的方法,和Object.GetType()是不一样的,注意区别。
snowkartel 2007-01-07
  • 打赏
  • 举报
回复
GetType()是Object定义的方法
typeof()是运算符
说的正确,同时记住,元数据系统实现时用的是Singleton模式,也就是说对于一个类,无论你是typeof(Class)还是instance.GetType()得到的总是同一个type.
wuchang 2007-01-07
  • 打赏
  • 举报
回复
一个类 Class A
A a = new A();

Type t = Type.GetType("A")

Type t = typeof(A)
Type t = a.GetType();

都是等效
honkerhero 2006-12-21
  • 打赏
  • 举报
回复
楼上正解
ld_thinking 2006-12-15
  • 打赏
  • 举报
回复
GetType()是Object定义的方法
typeof()是运算符
devil_hunter 2006-12-15
  • 打赏
  • 举报
回复
一个针对类,一个针对实例

17,740

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术 .NET Framework
社区管理员
  • .NET Framework社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧