相关疑难解决方法(0)

为什么不支持C#静态类扩展方法?

我从这个问题中知道,扩展方法只能在类实例上运行,而不能在静态类本身上运行.这意味着我无法扩展有用的静态类,如ConvertMath.

我想知道的是,为什么会这样?从上面的链接,有一些关于C#团队如何实现这种功能的建议.是否有一些哲学上的理由不支持它?

例如,这里有一个理由,为什么没有内置的LINQ ForEach<T>扩展IEnumerable<T>.

c# linq language-design

56
推荐指数
2
解决办法
9332
查看次数

扩展方法要求将类声明为静态

为什么扩展方法要求声明类是静态的?这是编译器要求吗?

c# c#-3.0

25
推荐指数
1
解决办法
3430
查看次数

C#相当于Java 8接口中的默认方法

我听说在Java 8中可以灵活地在接口中使用函数定义.我认为我们可以在实现此类接口的所有类中具有此功能的默认状态.

那么,我的问题是我们今天在C#中有这样的功能吗?微软是否有这方面的计划?

c# java default-interface-member

9
推荐指数
2
解决办法
3153
查看次数