【发布时间】:2010-03-12 19:40:14
【问题描述】:
【问题讨论】:
【问题讨论】:
这有点误导,因为根据定义,接口不提供实现。
然而,框架的许多部分都试图让生活更轻松——因此它们提供了一种采用接口的方法,但也提供了不带参数的重载。一个很好的例子是List<T>.Sort。
此处的文档建议,如果您使用通常需要 IComparer<T> 的方法,但通过一些不需要的重载来使用它,您将使用引用的“默认实现”。
然而,这实际上是与接口本身无关的类的“实现细节”。我个人认为这是文档中的一个糟糕的用词选择,应该更像:
框架中的许多类型都依赖于由 比较器类。
在我看来,这将为这个提供更清晰的含义......
【讨论】:
这意味着当你调用不带参数的Sort 方法(没有显式指定比较器)时,它将使用这个默认实现。
【讨论】:
这意味着这个类是实现接口的类。它指向实现接口本身的对象,没有任何派生或继承的成员,但显然是接口。这是与该接口直接对应的类。
public interface IComparer {
// Some members to implement here.
}
public class Comparer : IComparer {
// IComparer members implementation
}
【讨论】: