何时/为何使用/定义接口

时间:2011-04-10 21:28:04

标签: java

  

可能重复:
  When best to use an interface in java

您好,

定义类时,我应该总是定义一个相应的接口吗?

的优点是什么?
List list = new ArrayList();

为什么不呢 -

ArrayList arrayList = new ArrayList();

由于

4 个答案:

答案 0 :(得分:6)

执行前者的优势使您可以在不必重新声明变量的情况下切换实现。

这样你可以使用ArrayList,LinkedList(任何实现List的东西)等。

答案 1 :(得分:2)

优点是您可以更改其他实现,而无需更改其余代码。例如,您可以使用LinkedList。

这提高了可维护性。

答案 2 :(得分:0)

第一种方式的优点是键入的时间更短。

答案 3 :(得分:0)

interface是其他类可以基于的合同标准。我喜欢在API或应用程序编程接口的上下文中考虑它,它允许其他开发人员针对一组标准方法进行编程。类有义务实现interface定义的方法,但也可以实现其他可能未记录的私有方法(例如,接口的指定方法使用的实用方法)。