什么是Protocol

Protocol翻译过来,叫做”协议“

Protocol的作用

  • 用来声明一些方法
  • 也就说,一个Protocol是由一系列的方法声明组成的

任何类只要遵守了Protocol,就相当于拥有了Protocol得所有方法声明

Protocol的定义

  • @protocol 协议名称
  • // 方法声明列表
  • @end

类遵守协议

  • interface 类名 :父类 <协议名称1,协议名称2,...>
  • @end

协议中有2个关键字可以控制方法是否要实现(默认是@required,在大多数情况下,用途在于程序员之间的交流)

  • @required:这个方法必须要实现(若不实现,编译器会发出警告)
  • @optional:这个方法不一定要实现

一个协议可以遵守其他多个协议

一个协议遵守了其他协议,就相当于拥有了其他协议中的方法声明

  • @protocol 协议名称<协议1,协议2>
  • @end

NSObject是一个基类,最根本最基本的类,任何其他类最终都要继承它

还有名字也叫NSObject的协议,它是一个基协议,最根本最基本的协议

NSObject协议中声明很多最基本的方法

  • description
  • retain
  • release

建议每个新的协议都要遵守NSObject协议

原文地址:https://www.cnblogs.com/saurik/p/4832277.html