今天我收到了邮件中的"Head First Design Patterns"一书.到目前为止相当有趣的东西,但我确实有一个关于它的内容的问题.
我没有Java/C#背景,我现在也不想跳到这些语言(我首先想要专注于C++).在本书中说java没有接口的实现......这意味着对于该接口的每次更改,您都必须修改实现该接口的所有子类.
这是如何在C++中完成的?我错过了什么?
本书作者的意思是,如果您更改接口成员的签名或添加新签名,您将需要在实现类中进行这些更改,以便他们继续实现接口.
只要您使用完全相同的签名(即,具有相同的名称,返回类型以及参数的顺序和类型)实现接口的成员,您就可以以任何方式更改实现类.
我的印象是你不太了解接口是如何工作的,所以我建议你阅读MSDN上的C#接口规范,我认为这个主题非常清楚(除了在Java中使用它之外,它几乎与Java相同) " implements "关键字而不是冒号(:)来声明一个类实现了一个特定的接口.