2010-04-30 53 views
4

从.Net中的Type类继承是否有任何意义?继承自.Net的Type类.Net

即这样做的含义是什么?

我问这个,因为这个文本MSDN文档中的:

给继承当您从类型继承时,必须重写 以下成员...的 成员列表。

MSDN文档的类型:​​http://msdn.microsoft.com/en-us/library/system.type.aspx

好了,这实际上是说,任何人都可以从类型继承......但他们不说,为什么你想这样做。

谢谢!

+0

你为什么要这么做?任何特殊的需求? – Kangkan 2010-04-30 13:32:33

+0

@Kangkan:不用使用属性就可以编写反射信息。这只是一个想法!我只是想知道可能性。谢谢! – 2010-04-30 13:46:17

回答

2

这一切都取决于你在做什么。

这里是一种情况。也许我需要额外的功能在Type类中用于我的应用程序的某个时刻,可以说是用于日志记录。然而,然后我需要将它传递给一个函数,它只需要Type。我可以在不调用MyObject.GetType()的情况下将继承的类传递给该函数;

0

我有时希望.Net的反射库中的其他类的一些类是从接口派生的,因为当我为我的代码生成代码编写单元测试时,我必须执行skin =和=包装其中的许多类。

例如,它会如果有一个IMethodInfo接口的MethodInfo implmented是很好的。然后我可以编写我的FakeMethodInfo对象用于我的单元测试。

类型:我想创建一个FakeType类,它具有与Type相同的接口,但不涉及CLR,而是返回由我的单元测试代码提供的假数据。

+0

我认为如果我可以扩展为我自己的类型返回的类型...将信息添加到它,而不必使用属性,它会很好。 – 2010-04-30 13:42:36

+1

对于使用System.Component.TypeDescriptor进行反射的类,ICustomTypeDescriptor非常方便。原则上可以用该界面覆盖所有内容。 .NET框架中涉及Windows窗体和其他组件技术的许多类都使用这种机制。我不知道有一种机制来钩住Object.GetType()。 – 2010-04-30 14:39:27