本质上,协议与Java接口非常相似,除了:
- Swift协议还可以指定必须实现的属性(即字段)
- Swift协议需要通过使用 mutating 关键字来处理值/引用(因为协议可以由结构和类实现)
- 您可以随时将协议与protocol <>关键字结合使用。例如,将必须遵守协议A和B的功能参数声明为:
。
func foo ( var1 : protocol<A, B> ){}对于Java开发人员而言,这些是立即显而易见的差异(或者至少是到目前为止我发现的差异)。

本质上,协议与Java接口非常相似,除了:
。
func foo ( var1 : protocol<A, B> ){}对于Java开发人员而言,这些是立即显而易见的差异(或者至少是到目前为止我发现的差异)。