协议实例说明--租房

来源:互联网 发布:淘宝联盟加入购物车 编辑:程序博客网 时间:2024/04/30 15:08
////  Rent.h//  OCHomeWorkDelegate////  Created by lanouhn on 14-8-13.//  Copyright (c) 2014年 vaercly@163.com 陈聪雷. All rights reserved.//#import <Foundation/Foundation.h>@protocol RentDelegate <NSObject>//打扫卫生- (void)cleanUp;//定期交房租- (void)payRent;@end@interface Rent : NSObject@property (nonatomic, assign) id<RentDelegate> delegate;//房子脏了- (void)houseDirty;//房租到期了- (void)rentDate;@end////  Rent.m//  OCHomeWorkDelegate////  Created by lanouhn on 14-8-13.//  Copyright (c) 2014年 vaercly@163.com 陈聪雷. All rights reserved.//#import "Rent.h"@implementation Rent//房子脏了- (void)houseDirty {    [self.delegate cleanUp];}//房租到期了- (void)rentDate {    [self.delegate payRent];}@end////  Student.h//  OCHomeWorkDelegate////  Created by lanouhn on 14-8-13.//  Copyright (c) 2014年 vaercly@163.com 陈聪雷. All rights reserved.//#import <Foundation/Foundation.h>#import "Rent.h"@interface Student : NSObject <RentDelegate>@property (nonatomic, retain) NSString *name;- (id)initWithName:(NSString *)name;@end////  Student.m//  OCHomeWorkDelegate////  Created by lanouhn on 14-8-13.//  Copyright (c) 2014年 vaercly@163.com 陈聪雷. All rights reserved.//#import "Student.h"@implementation Student- (void)cleanUp {    NSLog(@"我是学生%@,我在打扫卫生", self.name);}- (void)payRent {    NSLog(@"我是学生%@,我要付房租了", self.name);}- (id)initWithName:(NSString *)name {    self = [super init];    if (self) {        self.name = name;    }    return self;}@end
////  main.m//  OCHomeWorkDelegate////  Created by lanouhn on 14-8-13.//  Copyright (c) 2014年 vaercly@163.com 陈聪雷. All rights reserved.//#import <Foundation/Foundation.h>#import "Rent.h"#import "Student.h"int main(int argc, const char * argv[]){    @autoreleasepool {        //创建房屋        Rent *house = [[Rent alloc] init];        //创建一个学生        Student *student = [[Student alloc] initWithName:@"小明"];                //设置代理为学生        house.delegate = student;                //房子脏了        [house houseDirty];        //房租到期了        [house rentDate];                    }    return 0;}

0 0
原创粉丝点击