在C#中myCustomer.GetType()和type of(Customer)之间有什么区别?

内容来源于 Stack Overflow,并遵循CC BY-SA 3.0许可协议进行翻译与使用

  • 回答 (2)
  • 关注 (0)
  • 查看 (16)

我在我维护的一些代码中看到了这两种方法,但不知道它们之间的区别。有吗?

让我补充一下,myCustomer是客户的一个实例

提问于
用户回答回答于

两者的结果在你的情况下完全相同。这将是你的自定义类型System.Type。这里唯一真正的区别是,当你想从你的类的一个实例中获取类型时,你可以使用它GetType。如果你没有实例,但你知道类型名称(并且只需要实际System.Type检查或比较),则可以使用typeof

重要的区别

编辑:让我补充说,调用GetType在运行时得到解决,而typeof在编译时解析。

用户回答回答于

GetType()用于查找实际运行时对象引用的类型。这可能与引用对象的变量的类型不同,因为继承。type of()创建了一个类型文字,该类型的类型是指定的,并且是在编译时确定的。

扫码关注云+社区