【发布时间】:2011-08-18 03:13:15
【问题描述】:
要么我遗漏了某些东西,要么 .NET 不支持 Java 的功能。我希望能够避免仅仅为了实现一个小接口而创建一个小类。例如,LINQ 的 except 方法需要 IEqualityComparer。所以我不得不写一个实现接口的小类。但是在 Java 中,我可以简单地做一个 new IEqualityComparer() { //interface declarations } 并完成它。所以有什么问题?
这与这篇文章有些相关:
Can a C# anonymous class implement an interface?.
补充:
目前,我为Equals 和GetHashCode 添加了覆盖。
【问题讨论】:
-
@djacobson 我认为这是一个不同的问题。OP 询问是否存在等效于匿名内部类的问题,而不是 C# 匿名类型功能是否可用于实现接口。微妙但不同。
标签: c# .net interface anonymous in-place