小编典典

比较Swift中的协议与Java中的接口

java

我正在阅读Apple开发人员页面上的iOS教程。

在我看来,这protocolinterface几乎具有相同的功能。

  • 两者之间有什么区别吗?

  • 项目中的不同用法?

更新

是的
,我看过上面的链接,我仍然不知道什么区别之间使用protocolinterface。当我问这样的问题时,我希望看到有关该主题的简单说明。有时很难从文档中获取所有内容。


阅读 601

收藏
2020-12-03

共1个答案

小编典典

本质上,协议与Java接口非常相似,除了:

  • Swift协议还可以指定必须实现的属性(即字段)
  • Swift协议需要通过使用 mutating 关键字来处理值/引用(因为协议可以由结构和类实现)
  • 您可以随时将协议与protocol <>关键字结合使用。例如,将必须遵守协议A和B的功能参数声明为:

func foo ( var1 : protocol<A, B> ){}

对于Java开发人员而言,这些是立即显而易见的差异(或者至少是到目前为止我发现的差异)。

2020-12-03