Objective-c 代理模式(delegate)
来源:互联网 发布:胸卡制作软件生成器 编辑:程序博客网 时间:2024/05/17 06:53
#import <Foundation/Foundation.h>
@protocol Job <NSObject>
-(void)takeEat;
-(void)takeSleep;
-(void)takePlay;
-(void)takeShower;
@end
我们再声明Nurse类 即代理的人:
#import <Foundation/Foundation.h>
#import "Job.h"
@interface Nurse : NSObject<Job>//实现该协议
@end
实现文件:
#import "Nurse.h"
@implementation Nurse
-(void)takeEat
{
}
-(void)takeSleep
{
}
-(void)takePlay
{
}
-(void)takeShower
{
}
-(void)dealloc
{
}
@end
再声明一个morther类:
#import <Foundation/Foundation.h>
#import "Job.h"
@class Nurse;
@interface Morther : NSObject
{
}
-(id)initWithName:(NSString *)_name delagat:(id<Job>)_delagete;
@property(nonatomic,copy)NSString *name;
-(void)delagateThings;// 被代理的事情
@end
//实现文件
#import "Morther.h"
#import "Nurse.h"
@implementation Morther
-(id)initWithName:(NSString *)_name delagat:(id)_delagete
{
}
@synthesize name;
-(void)dealloc
{
}
-(void)delagateThings
{
}
@end
看看 在 main 文件中是怎么实现的:
#import <Foundation/Foundation.h>
#import "Morther.h"
#import "Nurse.h"
#import "Job.h"
int main (int argc, const char * argv[])
{
}
代理中,需要记住的关键是在发出代理请求的类(A)中声明代理人(B)的实例变量,这样就可以保证A 能通过调用B中B代理的方法来完成B代理的事情,即自己代理给B 的事情。
- Objective-c 代理模式(delegate)
- Objective-c 代理模式(delegate)
- Objective-c 代理模式(delegate)
- objective-c delegate 委托 代理 的理解
- Objective C--代理模式
- Objective C 代理模式
- Objective-c 代理模式
- objective-c 回调函数学习(关于objective-c的代理,delegate,protocol相关)
- Objective C 之 基础设计模式 (Delegate)
- 代理(delegate)设计模式
- 【初学】Objective-C学习笔记-委托代理(delegate)和协议(protocol)
- iOS 开发-Objective-c基础:协议和代理delegate&protocol)
- Objective-C语言——委托模式(代理模式)
- objective-c delegate
- objective-c - delegate
- Objective-C delegate理解
- objective-c - delegate
- objective-c delegate
- R cannot be resolved to a variable
- delphi tcombobox 光标 输入
- Delphi2010如何获取程序内部自身版本号?
- oracle 内置函数
- C++运行时错误集
- Objective-c 代理模式(delegate)
- HDU 1864(最大报销额)基础0-1背包问题
- 1042. Shuffling Machine (20)
- 数据库常用到得一些语句大全
- CvSplit
- ubuntu下安装bochs
- Android性能优化之电量篇
- 与罗胖一起追寻内心平静
- 处理MySQL复制环境Slave故障的一个案例