协议和代理

2017-12-15  本文已影响0人  super_2e20

协议

//定义:一组方法的列表
//特点:只有定义,没有实现,实现在引用(遵守)了该协议的类的.m文件中

格式
@protocol 协议名
方法列表
@end
使用:
1.引入协议
2.引用(遵守)协议
3.实现协议中的方法

协议方法的分类:
这两个关键字专门用于修饰协议中的方法
@optional :被optional修饰的方法是可选实现的
@required:被required修饰的方法是必须实现的
修饰词修饰的方法到下一个修饰词或结束之间的所有方法

为什么使用协议?
协议可以提供一个统一的接口,谁要想实现功能,只要遵守了我这个协议即可

类型 继承 协议
共同点 都可以提供一个统一的接口 都可以提供一个统一的接口
不同点 只能在本类和子类中使用 必须单独创建一个父类 父类有自己的方法的实现 只有单继承 只要遵守协议就可以使用 不用创建类 只有定义 可以多遵守

1.协议可以遵守协议
2.类可以遵守协议
3.一个协议可以同时被多个协议或者多个类遵守
4.一个协议或者一个类可以同时遵守多个协议

上一篇 下一篇

猜你喜欢

热点阅读