美文网首页
Swift协议

Swift协议

作者: 动物园园长熊熊酱 | 来源:发表于2017-11-09 17:14 被阅读19次

什么是协议

协议用于统一方法和属性的名称,但是协议没实现,在其他语言通常叫做接口。

协议也是一种数据类型,就像类、结构体和枚举那样的数据结构。可以把它当做参数。它也可以是一个常量或者变量,唯一的区别是协议本身没有实现,它只有声明,实现是由其他遵循协议的对象来实现的。

当然,你也可以提前在协议扩展中定义协议的默认实现,不过这些默认实现并不属于协议本身,当符合协议扩展要求的对象遵守协议时,就可以免费获得协议的协议扩展中定义的默认实现。

协议使用步骤

  1. 协议的声明,像其他的数据类型的声明,只不过没有实现而已。
  2. 协议的扩展,可以指定扩展的适用对象,在扩展中定义默认的实现。
  3. 有类,结构体或者枚举表示遵守这个协议
  4. 遵守协议的数据结构类型来实现协议中声明的属性和方法,改写免费获得的默认实现(可选)

声明协议

格式:

protocol 协议:继承的协议1,继承的协议2 {
    var 某个属性:类型 {get set}
    func 某个方法(参数列表) -> 返回值类型
    init (参数列表)
}

相关文章

网友评论

      本文标题:Swift协议

      本文链接:https://www.haomeiwen.com/subject/ghvhqxtx.html