gpt4 book ai didi

oop - 继承和接口(interface)

转载 作者:行者123 更新时间:2023-12-01 08:08:39 25 4
gpt4 key购买 nike

这是此 question 的后续问题.

假设我有一个继承树如下:

Car -> Ford -> Mustang -> MustangGT

为这些类中的每个 定义接口(interface)是否有好处?示例:

ICar -> IFord -> IMustang -> IMustangGT

我可以看到也许其他类(如 Chevy)想要实现 IcarIFord 甚至可能是 IMustang,但可能不是 IMustangGT,因为它非常具体。在这种情况下接口(interface)是否多余?

此外,我认为任何想要实现 IFord 的类都肯定希望通过从 Ford 继承来使用其单一继承,以免重复代码。如果这是给定的,那么同时实现 IFord 有什么好处?

最佳答案

根据我的经验,当您有多个类时,最好使用接口(interface),每个类都需要响应相同的一个或多个方法,以便它们可以被针对这些类的公共(public)接口(interface)编写的其他代码互换使用。接口(interface)的最佳用途是当协议(protocol)很重要但每个类的底层逻辑可能不同时。如果您以其他方式复制逻辑,请考虑使用抽象类或标准类继承。

针对您问题的第一部分,我建议不要为您的每个类创建接口(interface)。这会不必要地扰乱您的类结构。如果您发现需要一个接口(interface),您可以随时添加它。希望这对您有所帮助!

亚当

关于oop - 继承和接口(interface),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/268698/

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