为什么我们使用接口并将扩展实现接口扩展到类?

时间:2018-10-27 18:27:43

标签: java android

为什么我们实际上不能使用在类中创建的方法? 我知道如何实现接口,并且该类中的所有方法都可以覆盖。

// The callback interface
interface MyCallback {
void callbackCall();
}

1 个答案:

答案 0 :(得分:1)

可以。但是不要。您将欣赏它为您的应用程序带来的一致性。它允许在关联类(即CallbackMother,CallbackGirlfriend等)中强制执行通用方法签名。

我发现重写类时接口特别有价值。该界面确保我不会断开与其他类的任何链接。


为回答您的问题,请提供更详细的解释:

该班级是最终产品。它包含执行任务的部分“方法”。

假设您要构建“飞机”类。它将做的事情-具有着陆,起飞,改变航向,增加高度,坠毁等方法。 当然,您可以建造飞机。但是您可能想先制定一个计划。这就是界面。

实施Java接口会迫使您遵守计划-这样可以避免错误。当发现要更改计划时,您将不得不更新计划-即修改界面。您将减少犯错误,并减少错误。

其他好处是:

  • 通过共享公共接口实现相似类之间的一致性。
  • 通过破坏使用该类的其他类,可以更轻松地修改类。
  • 提供一种提供多重继承的方式(C ++允许但Java允许 不)
  • 在某些框架中广泛使用接口来做一些时髦的事情,例如 依赖注入。

在开始做更复杂的事情时,您别无选择,只能至少使用一些标准Java接口:可序列化,可观察,可迭代。

由于您已经知道该怎么做,因此即使目前看来过头了,也要使用它。它将得到回报。