gpt4 book ai didi

c# - 为什么List类要实现IList接口(interface)?

转载 作者:行者123 更新时间:2023-12-02 10:47:06 37 4
gpt4 key购买 nike

我的问题可能感觉有点愚蠢,但我真的想知道为什么集合层次结构的设计方式是包含接口(interface)和类,而它可能只是类或只有顶部和其余类的一个接口(interface)。

谁能给我解释一下原因吗?

最佳答案

每个类只能从一个类派生,但可以从多个接口(interface)派生。
为什么我们需要多个接口(interface)?
一般来说,一个类有多个接口(interface)有两个原因,1。一个类可以有不同类型的行为2.开闭原则
接口(interface)的简短定义是:接口(interface)是一个实体,它决定派生类必须如何行为,并且由于存在不同类型的行为,因此每个类可能需要不同的接口(interface)。
此外,根据 SOLID 的第二条原则(开闭原则的缩写),这意味着实体必须对扩展开放,但对修改关闭,即使您想添加新行为(例如 CanBark ) 到一个特定的类,并且您已经有一个相关的接口(interface) (IDogActions) 作为您的类的父类,建议不要修改 IDogActions 接口(interface),因为可能有许多其他类实现此接口(interface),并且不需要新操作,您可以创建一个新接口(interface)(例如 IDogAuditoryActions)。

关于c# - 为什么List类要实现IList接口(interface)?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/54918570/

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