Swift 面向协议编程之协议扩展

协议的命名遵循Swift的标准库,即协议名以“Type”,"-able","-ible"结尾。

例如 SequenceType,GeneratorType,CustomStringCoveeertible,  -type定义行为,-able定义元素怎样做事。

Swift 能扩展协议

协议可以添加方法和属性

协议扩展能添加协议中已有属性和方法的实现

Swift 面向协议编程之协议扩展

如果一个类遵循了协议,那么协议中的方法必须被这个类来实现或者在协议的扩展中被实现

Swift 面向协议编程之协议扩展

上面是项目中遇到的协议中添加了3个方法,只在协议扩展中实现了一个,报错信息提示其他两个也得实现。