为什么我们在继承IEnumerable< T >接口的时候也要实现IEnumerable接口. 新的代码里面都用IEnumerable< T >,因为泛型的类型是安全的.我们可以以类型安全的方式进行迭代,并在周围传播该信息.如果我将IEnumerable返回给您,则您可以放心地假定从它返回的所有内容都是字符串引用或null.使用IEnumerable,我们必须有效地强制转换(通常隐式地在foreach语句中)从序列返回的每个元素,因为IEnumerator的Current属性只是o
在.Net中,要想被foreach遍历,那么目标对象要实现IEnumerable或IEnumerable<T>接口,这个接口有一个方法,GetEnumerator(),返回一个IEnumerator接口,这个接口里定义了Next()等方法,例如: public class Garge : IEnumerable { public IEnumerator GetEnumerator { return new A(); } internal class A : IEnumerator { //实现