今天北京的天气仍是灰蒙蒙的,看不见一片云彩,下午把媳妇送到西站,没有过多的依依不舍,接下来媳妇发来短信说流泪了,当初和宿舍两个兄弟一块来北京,但还没半年,他们离开了北京,我坚持在这,让媳妇不远千里来北京,说多了都是泪,还是写一下协议吧;
首先定义一个协议,让类去实现,协议本身不是类,里面是方法的声明,
定义协议
#import <Foundation/Foundation.h>
@protocol sutdy <NSObject>
@required
//完成工作
-(void)finishWork;
// 不迟到
-(void)DntLate;
@optional
//按时回家
-(void)GoHomeOnTime;
@end
在类的.h中添加协议
#import <Foundation/Foundation.h>
#import "sutdy.h"
@interface student : NSObject<sutdy>
{
NSString *_age;
}
-(void)playBasketball;
@end
在类的.m中实现
#import "student.h"
@implementation student
-(void)playBasketball
{
NSLog(@"开始打篮球");
}
#pragma mark - study
//完成工作
-(void)finishWork
{
NSLog(@"完成工作") ;
}
// 不迟到
-(void)DntLate
{
NSLog(@"不能迟到。老师打pp");
}
-(void)GoHomeOnTime
{
NSLog(@" 按时回家了");
}
@end
在main中创建对象调用#import <Foundation/Foundation.h>
#import "student.h"
int main(int argc, const char * argv[])
{
student *stu = [[student alloc]init];
[stu finishWork];
[stu DntLate];
[stu playBasketball];
if ([stu respondsToSelector:@selector(GoHomeOnTime)] ) {
NSLog(@"类中有此方法实现");
[stu GoHomeOnTime];
}
}