今天我收到了我的书“Head First Design Patterns”。到目前为止非常有趣的东西,但是我对它的内容有疑问。
我没有 Java/C# 背景,现在也不希望跳入这些语言(我想先专注于 C++)。书中说 java 没有接口(interface)的实现...这意味着对于该接口(interface)的每次更改,您都必须修改实现该接口(interface)的所有子类。
这是如何在 C++ 中完成的?我错过了什么?
最佳答案
这本书的作者的意思是,如果您更改接口(interface)成员的签名或添加新成员,您将需要在实现类中进行这些更改,以便它们继续实现接口(interface)。
只要您的接口(interface)成员使用完全相同的签名(即具有相同的名称、返回类型以及参数的顺序和类型)实现,您就可以根据需要以任何方式更改实现类。
我的印象是您不太了解接口(interface)的工作原理,所以我建议您阅读 C# interface specification on MSDN我认为这在主题上非常清楚(并且在 Java 中几乎相同,除了在 Java 中您使用“implements”关键字而不是冒号 (:) 来声明一个类实现了一个具体接口(interface))。
关于Java:没有接口(interface)实现?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/492741/