Protocol

顾名思义

协议就是双方要协商好的意思

也就是一方负责制定规则,一方需要遵守规则

在iOS中协议主要是用于方法回调

还有就是代码的封装

因为协议里面的方法默认是必须实现

这样的话就可以把必须实现的方法写到协议里面

防止使用的时候被遗忘更加的安全

还有就是在iOS中没有多继承

但是可以通过多个协议来实现

iOS协议不能声明成员变量

只要某个类遵守了这个协议,就相当于拥有这个协议中的所有方法声明

只要父类遵守了某个协议,就相当于子类也遵守了

默认的情况下

协议声明的所有方法都要求实现

因为默认就是@required这样的好处就是Xcode会提示你还有方法没有实现

如果不要求实现可以在方法上面加上@optional