2017-11-18 72 views
0

documentation什么interace为的System.Array类的运行时实现在.net中是什么意思?

[...] Array类实现了System.Collections.Generic.IList<T>System.Collections.Generic.ICollection<T>System.Collections.Generic.IEnumerable<T>通用接口。 实现在运行时提供给数组,因此对文档构建工具不可见。

这是提供给C#开发人员。我的意思是我可以提供运行时实现到任何类的接口吗?

+0

文档只能拿你这一步,如果你想进一步挖掘,阅读源代码,https://github.com/dotnet/coreclr/blob/master/src/mscorlib/src/System/ Array.cs –

+1

https://stackoverflow.com/q/11163297/17034 –

+0

感谢@HansPassant。正是我需要的。 –

回答

2

是,数组是特殊的,准确地表现为链接的文件说。

不,你不能随心所欲(甚至特定的)接口的类在运行时,除非你正在创建自己的实现CLR的补充。

注意,有很多方法来模拟接口加入喜欢的扩展方法或代理类包装的对象,但有添加接口类动态没有真正的办法的行为。

+0

感谢您的解释。所以,这个动态接口实现是CLR内置的逻辑,只适用于数组类型。 –