gpt4 book ai didi

c# - 实现接口(interface)的好处

转载 作者:可可西里 更新时间:2023-11-01 03:11:39 24 4
gpt4 key购买 nike

在 C# 3.5 中实现接口(interface)有什么好处?

最佳答案

您将能够将对象传递给需要接口(interface)作为参数的方法(或满足类型约束)。 C# 不支持“duck typing”。仅仅通过编写接口(interface)定义的方法,对象不会自动与接口(interface)类型“兼容”:

public void PrintCollection<T>(IEnumerable<T> collection) {
foreach (var x in collection)
Console.WriteLine(x);
}

如果List<T>没有实现 IEnumerable<T>接口(interface),您将无法将其作为参数传递给 PrintCollection方法(即使它有一个 GetEnumerator 方法)。

基本上,一个接口(interface)声明一个契约。实现接口(interface)会强制您的类绑定(bind)到契约(通过提供适当的成员)。因此,依赖于该契约的所有内容(一种依赖于由您的对象提供的接口(interface)指定的功能的方法)也可以与您的对象一起使用。

关于c# - 实现接口(interface)的好处,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1389434/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com