我为什么要使用Interfaces?

我为什么要使用Interfaces?

我知道他们强迫你实现方法等,但我不明白为什么你想要使用它们。任何人都可以给我一个很好的例子或解释我为什么要实现这个。



喵喔喔
浏览 573回答 3
3回答

FFIVE

一个具体的例子:接口是指定其他人的代码必须满足的合同的好方法。如果我正在编写代码库,我可能会编写对具有某组行为的对象有效的代码。最好的解决方案是在接口中指定这些行为(无实现,只是描述),然后在我的库代码中使用对实现该接口的对象的引用。然后任何随机的人都可以来,创建一个实现该接口的类,实例化该类的对象并将其传递给我的库代码并期望它工作。注意:当然可以严格实现接口而忽略接口的意图,因此仅仅实现接口并不能保证事情能够正常工作。愚蠢总能找到方法!:-)另一个具体的例子:两个团队致力于必须合作的不同组件。如果两个团队在第1天坐下并同意一组接口,那么他们可以分别采用各种方式并围绕这些接口实现其组件。团队A可以构建测试工具,模拟团队B中的组件进行测试,反之亦然。并行开发,减少错误。关键点在于接口提供了一个抽象层,以便您可以编写不了解不必要细节的代码。大多数教科书中使用的规范示例是排序例程。只要您有比较任何两个对象的方法,就可以对任何类对象进行排序。因此,您可以通过实现IComparable接口来使任何类可排序,这会强制您实现比较两个实例的方法。编写所有排序例程以处理对IComparable对象的引用,因此只要实现IComparable,就可以在类的对象集合中使用任何这些排序例程。

小怪兽爱吃肉

一个典型的例子是插件架构。开发人员A编写主应用程序,并希望确保开发人员B,C和D编写的所有插件符合他的应用程序对他们的期望。
打开App,查看更多内容
随时随地看视频慕课网APP