我正在浏览Apple开发者页面的iOS教程.
在我看来protocol,interface几乎具有相同的功能.
这两者有什么不同吗?
项目中的差异用法?
更新
是的,我看过上面的链接,我仍然不知道什么区别之间使用protocol和interface.当我提出这样的问题时,我想看一个关于这个主题的简单解释.有时从文档中获取所有内容可能很困难.
Tho*_*har 104
基本上协议与Java接口非常相似,除了:
.
func foo ( var1 : protocol<A, B> ){}
Run Code Online (Sandbox Code Playgroud)
这些是Java开发人员的明显差异(或者至少是我到目前为止发现的).
Jer*_*one 31
补充@Thomas Schar的答案.Swift协议魔法来自扩展.
让我头疼几个小时的一件事是,并非所有协议都可以用作属性类型.例如,如果你有一个带有typealias的协议,你就不能直接将它作为一种属性使用(当你考虑它时它是有意义的,但是从Java开始我们真的想拥有像userDao这样的属性:IDao).
| 归档时间: |
|
| 查看次数: |
26390 次 |
| 最近记录: |