设为首页 加入收藏

TOP

完整代理的简单实现
2019-08-31 01:02:37 】 浏览:31
Tags:完整 代理 简单 实现

main.m文件

#import <Foundation/Foundation.h>
#import "Person.h"
int main(int argc, const char * argv[]) {
    @autoreleasepool {
        // insert code here...
        Person *xw = [Person new];
        [xw needHouse:@"小区房"];
    }
    return 0;
}

Agent.h

#import <Foundation/Foundation.h>

@protocol rentHouseDelegate<NSObject>
- (void) rentHouseDidFinished:(NSString *)result;
@end
@interface Agent : NSObject
@property (nonatomic,assign) id <rentHouseDelegate>delegate;
- (NSString *)rentHouse;
@end

Agent.m

#import "Agent.h"

@implementation Agent
- (NSString *)rentHouse{
    if (self.delegate != nil) {
        NSString *result = @"房子找到了,为**小区3栋405";
        [self.delegate rentHouseDidFinished:result];
        return result;
    }
    return nil;
}

@end

Person.h

#import <Foundation/Foundation.h>
#import "Agent.h"
@interface Person : NSObject<rentHouseDelegate>
- (void) needHouse:(NSString *)require;

@end

Person.m

#import "Person.h"

@implementation Person
- (void)needHouse:(NSString *)require{
    //1.找到中介(需要导入中介类)
    Agent *agent = [Agent new];
    //2.告诉中介我是谁,(在这里就需要在中介类定义一个属性进行记录)
    agent.delegate = self;
    //3.中介去租房子,(在这里需要在中介类里面定义一个租房子的方法)
    [agent rentHouse];
}
- (void)rentHouseDidFinished:(NSString *)result{
    NSLog(@"%@",result);
}
@end

 

】【打印繁体】【投稿】【收藏】 【推荐】【举报】【评论】 【关闭】 【返回顶部
上一篇报错:library not found for -ls.. 下一篇iOS开发之OC与swift开发混编教程..

最新文章

热门文章

Hot 文章

Python

C 语言

C++基础

大数据基础

linux编程基础

C/C++面试题目