A-A+

iOS Protocol基础

博客主机

基本用途

  • 可以用来声明很多方法不能声明成员变量,只有.h文件
  • 只要某个类遵守了这个协议,就相当于拥有了这个协议中的所有方法声明任何类都可以使用协议,只要遵守它
  • 只要父类遵守了某个协议,就相当于子类也遵守了

二、格式

  • 协议的编写

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

@protocol myProtocol <NSObject> 
@required  //要求实现,不实现就会发出警告
- (void)test1;

@optional  //不要求实现
- (void)test2;

  • 某个类遵守协议

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

.h
#import "头文件.h"
@interface Person:NSObject<myProtocol>
@end

.m
-(void)test1{
}
-(void)test2{
}

三、关键字

协议中有两个关键字可以控制方法是否要实现默认是@required,要求实现,如果没有实现,会发出警告,在大多数情况下,用于程序员之间的交流

四、协议可以遵守协议协议继承协议、扩充一些方发声明

@protocol MyProtocol3 <MyProtocol>
- (void)hehe;
@end

作者:iOS_July
链接:https://www.jianshu.com/p/faddf062f1fa
来源:简书
著作权归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处。

标签:

给我留言

Copyright © ios教程,苹果粉丝,苹果资讯,ios入门教程,ios学习,ios程序员,ios视频教程,ios粉丝网 保留所有权利.   Theme  Ality

用户登录