繁体   English   中英

实现IEnumerable的class是什么意思<object[]></object[]>

[英]What does it means class that implements IEnumerable<object[]>

实现 IEnumerable<object[]> 的 class 是什么意思? (在特定情况下,它是一个抽象的 class 但我不确定它是否相关)这是否意味着它应该包含 IEnumerable<object[]> 属性?

class <some class name>: IEnumerable<object[]>

对于 class 实现接口,这意味着它包含在该接口中公开或隐式可访问的所有属性或方法。 因此,从您的示例中,您正在使用带有object[]作为类型参数的 IEnumerable 接口的通用版本 从关于抽象类的评论中,我收集到您是 c# 的新手,因此让我们通过使用非通用版本从中删除 generics 来简化此示例。

public interface IEnumerable{
    IEnumerator GetEnumerator();
}   

接口声明了一个方法,你只需要这样:

public class SomeClass: IEnumerable
{
    public IEnumerator GetEnumerator()
    {     
    }
}

或者

public class SomeClass: IEnumerable
{
    IEnumerator IEnumerable.GetEnumerator()
    {     
    }
}

对于 class 来实现接口,这意味着可以将其实例分配给该类型的变量,因此通常您可以像这样执行变量:

SomeClass instance = new SomeClass();

但您现在可以:

IEnumerable instance = new SomeClass();

这也适用于方法参数

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM