Swift 协议
- Swift 中的协议用来定义方法和属性 但协议本身不进行实现,而是由遵守该协议的类具体实现 与OC不同的是,协议可以被结构体和枚举遵守
- 定义协议
protocol 协议名称 {
协议内容
}
- 如果希望 定义的协议只能被类遵守 定义格式
protocol 协议名称 : Class {
协议内容
}
对 Mutating 方法的规定
- 有时需要在方法中改变它的实例。
例如,值类型(结构体,枚举)的实例方法中,将mutating关键字作为函数的前缀,写在func之前,表示可以在该方法中修改它所属的实例及其实例属性的值。
protocol daysofaweek {
mutating func show()
}
enum days: daysofaweek {