-4

好的,我了解接口的基本概念,但我不一定知道我“了解”了它的用途。

我现在正在家里使用抽象工厂设计模式编写应用程序。主要是为了练习,但我的最终目标是销售应用程序(但这不适用于本网站)。

无论如何,我用作参考的书在示例中使用了一个接口。

维基百科解释说:“接口用于编码各种类型的类共享的相似性,但不一定构成类关系。”

所以这基本上告诉我接口用于确保类之间的相似性。

因此,如果我有一个名为 Guitar 的接口,我可以有一个名为 GuitarAbstract 的抽象类,以及其他名为 BassGuitar、AcousticGuitar、ElectricGuitar 的类,以及所有的继承和实现等。

我在理智上理解接口的需求和使用。它看起来像是额外的冗余代码。

我在那里错过了什么吗?

4

2 回答 2

3

接口允许您编写适用于任何类型的类的代码,只要它实现所需的接口即可。这使您的代码可以轻松重用,从而减少工作量。接口不是冗余的。

迭代器就是一个很好的例子。您不关心迭代器代表什么数据结构,您只想检索数据。

这就是接口的目的。

于 2013-07-11T16:23:56.120 回答
1

接口不是附加代码,它就像一个合同。它定义了必须提供的功能,并将实现细节留给类。这是 IMO 真正的面向对象编程的核心。

于 2013-07-11T16:23:47.603 回答