1. iOS程序源代码下载链接:03-代理设计模式.zip
    28.3 KB
  2. // main.m

  3. //
  4. //  main.m
  5. //  03-代理设计模式
  6. //
  7. //  Created by apple on 13-11-27.
  8. //  Copyright (c) 2013年itcast. All rights reserved.
  9. //
  10. #import<Foundation/Foundation.h>
  11. #import"Baby.h"
  12. //#import "Student.h"
  13. #import"Dog.h"
  14. int main(int argc,const char* argv[])
  15. {
  16.    @autoreleasepool{
  17.        // 1.学生
  18. //        Nurse *nurse = [[Nurse alloc] init];
  19. //        Teacher *teacher = [[Teacher alloc] init];
  20. //        Student *stu = [[Student alloc] init];
  21.        // 2.婴儿
  22.         Baby *b = [[Baby alloc] init];
  23.         b.age =1;
  24. //        b.baomu = stu;
  25.         b.baomu = [[Dog alloc] init];
  26.          [b sleep];
  27.     }
  28.    return 0;
  29. }
  30. // Baby.h

  31. //
  32. //  Baby.h
  33. //  03-代理设计模式
  34. //
  35. //  Created by apple on 13-11-27.
  36. //  Copyright (c) 2013年itcast. All rights reserved.
  37. //
  38. #import<Foundation/Foundation.h>
  39. #import"BabyBaomuXieyi.h"
  40. @interface Baby : NSObject
  41. @property(nonatomic,strong) id<BabyBaomuXieyi> baomu;//任何人都能做保姆
  42. @property(nonatomic,assign)int age;//年龄
  43. - (void)hungry;//饿了
  44. - (void)cry;//哭了
  45. - (void)sleep;//想睡觉
  46. @end
  47. // Baby.m

  48. //
  49. //  Baby.m
  50. //  03-代理设计模式
  51. //
  52. //  Created by apple on 13-11-27.
  53. //  Copyright (c) 2013年itcast. All rights reserved.
  54. //
  55. #import"Baby.h"
  56. @implementation Baby
  57. - (void)cry
  58. {
  59.     NSLog(@"%d岁的baby哭了", _age);
  60.    //转载请注明出处--本文永久链接:http://www.cnblogs.com/ChenYilong/p/3493396.html
  61.    //通知保姆(护士)
  62.     [_baomu babyCry:self];
  63. }
  64. - (void)sleep
  65. {
  66.     NSLog(@"%d岁的baby想睡觉", _age);
  67.   //转载请注明出处--本文永久链接:http://www.cnblogs.com/ChenYilong/p/3493396.html 
  68.    //通知保姆
  69.     [_baomu babySleep:self];
  70. }
  71. - (void)hungry
  72. {
  73.     NSLog(@"%d岁的baby想吃东西", _age);
  74.    
  75.    //通知保姆
  76.     [_baomu babyHungry:self];
  77. }
  78. @end
  79. // Dog.h

  80. //
  81. //  Dog.h
  82. //  03-代理设计模式
  83. //
  84. //  Created by apple on 13-11-27.
  85. //  Copyright (c) 2013年itcast. All rights reserved.
  86. //
  87. #import<Foundation/Foundation.h>
  88. #import"BabyBaomuXieyi.h"
  89. @interface Dog : NSObject <BabyBaomuXieyi>
  90. @end
  91. // Dog.m

  92. //
  93. //  Dog.m
  94. //  03-代理设计模式
  95. //
  96. //  Created by apple on 13-11-27.
  97. //  Copyright (c) 2013年itcast. All rights reserved.
  98. //
  99. #import"Dog.h"
  100. #import"Baby.h"
  101. @implementation Dog
  102. - (void)babyCry:(Baby *)baby
  103. {
  104.     NSLog(@"狗正在安慰%d岁的baby", baby.age);
  105. }
  106. - (void)babyHungry:(Baby *)baby
  107. {
  108.     NSLog(@"狗喂%d岁的baby吃东西", baby.age);
  109. }
  110. - (void)babySleep:(Baby *)baby
  111. {
  112.     NSLog(@"狗哄%d岁的baby去睡觉", baby.age);
  113. }
  114. @end
  115. // Nurse.h

  116. //
  117. //  Nurse.h
  118. //  03-代理设计模式
  119. //
  120. //  Created by apple on 13-11-27.
  121. //  Copyright (c) 2013年itcast. All rights reserved.
  122. //
  123. #import<Foundation/Foundation.h>
  124. @class Baby;
  125. @interface Nurse : NSObject
  126. - (void)babyCry:(Baby *)baby;
  127. - (void)babySleep:(Baby *)baby;
  128. - (void)babyHungry:(Baby *)baby;
  129. @end
  130. // Nurse.m

  131. //
  132. //  Nurse.m
  133. //  03-代理设计模式
  134. //
  135. //  Created by apple on 13-11-27.
  136. //  Copyright (c) 2013年itcast. All rights reserved.
  137. //
  138. #import"Nurse.h"
  139. #import"Baby.h"
  140. @implementation Nurse
  141. - (void)babyCry:(Baby *)baby
  142. {
  143.     NSLog(@"护士正在安慰%d岁的baby", baby.age);
  144. }
  145. - (void)babyHungry:(Baby *)baby
  146. {
  147.     NSLog(@"护士喂%d岁的baby吃东西", baby.age);
  148. }
  149. - (void)babySleep:(Baby *)baby
  150. {
  151.     NSLog(@"护士哄%d岁的baby去睡觉", baby.age);
  152. }
  153. @end

 

https://www.evernote.com/shard/s227/sh/ad26c268-cd1e-463a-a093-bbe84802abf8/f452d3af63abdc7066cab8571c3e9c50

代理设计模式iOS开发Demo(示例程序)源代码的更多相关文章

  1. 03.WebView演练-iOS开发Demo(示例程序)源代码

    技术博客http://www.cnblogs.com/ChenYilong/   新浪微博http://weibo.com/luohanchenyilong   //转载请注明出处--本文永久链接:h ...

  2. iOS多线程 iOS开发Demo(示例程序)源代码

    本系列所有开发文档翻译链接地址:iOS7开发-Apple苹果iPhone开发Xcode官方文档翻译PDF下载地址(2013年12月29日更新版)   iOS程序源代码下载链接:01.大任务.zip22 ...

  3. 01-QQ 3-最终重构版 Demo示例程序源代码

      源代码下载链接:01-QQ 3.zip292.5 KB // QQAppDelegate.h Map // //  QQAppDelegate.h //  01-QQ // //  Created ...

  4. 01-导航实例-QQ空间Demo示例程序源代码

    01-导航实例-QQ空间.zip62.4 KB // MJLoginViewController.h Map // //  MJLoginViewController.h //  01-导航实例-QQ ...

  5. 01-modal Demo示例程序源代码

    源代码下载链接:01-modal.zip37.8 KB // MJAppDelegate.h // //  MJAppDelegate.h //  01-modal // //  Created by ...

  6. 02-更改窗口的根控制器 Demo示例程序源代码

      源代码下载链接:02-更改窗口的根控制器.zip18.0 KB // MJAppDelegate.h // //  MJAppDelegate.h //  02-更改窗口的根控制器 // //  ...

  7. 归档普通对象Demo示例程序源代码

    源代码下载链接:06-归档普通对象.zip34.2 KB // MJPerson.h // //  MJPerson.h //  06-归档普通对象 // //  Created by apple o ...

  8. iOS开发UI篇—程序启动原理和UIApplication

    iOS开发UI篇—程序启动原理和UIApplication   一.UIApplication 1.简单介绍 (1)UIApplication对象是应用程序的象征,一个UIApplication对象就 ...

  9. iOS开发UI篇—程序启动原理和UIApplication1

    iOS开发UI篇—程序启动原理和UIApplication   一.UIApplication 1.简单介绍 (1)UIApplication对象是应用程序的象征,一个UIApplication对象就 ...

随机推荐

  1. LintCode-380.两个链表的交叉

    两个链表的交叉 请写一个程序,找到两个单链表最开始的交叉节点. 注意事项 如果两个链表没有交叉,返回null. 在返回结果后,两个链表仍须保持原有的结构. 可假定整个链表结构中没有循环. 样例 下列两 ...

  2. 【alpha】Scrum站立会议第2次....10.17

    小组名称:nice! 小组成员:李权 于淼 杨柳 刘芳芳 项目内容:约跑app 1.任务进度 成员 已完成 今日完成 李权 数据库设计 消息发送代码实现 于淼 注册.登录界面,以及登录界面后台代码.发 ...

  3. ZOJ 1539 L-Lot

    https://vjudge.net/contest/67836#problem/L Out of N soldiers, standing in one line, it is required t ...

  4. 实验吧编程题:Hashkill

    原题:6ac66ed89ef9654cf25eb88c21f4ecd0是flag的MD5码,(格式为ctf{XXX_XXXXXXXXXXX_XXXXX})由一个0-1000的数字,下划线,纽约的一个区 ...

  5. idea导出jar包

    在File->Project Structure->Artifacts,如图:  然后: 点击Apply,OK. 跳出去就可以看到多了META-INF文件夹: 然后build项目,就可以看 ...

  6. try catch finally 与continue的使用

    using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.T ...

  7. Tomcat 设计模式分析

    门面设计模式 门面设计模式在 Tomcat 中有多处使用,在 Request 和 Response 对象封装中.Standard Wrapper 到 ServletConfig 封装中.Applica ...

  8. 【bzoj2004】[Hnoi2010]Bus 公交线路 状压dp+矩阵乘法

    题目描述 小Z所在的城市有N个公交车站,排列在一条长(N-1)km的直线上,从左到右依次编号为1到N,相邻公交车站间的距离均为1km. 作为公交车线路的规划者,小Z调查了市民的需求,决定按下述规则设计 ...

  9. 【bzoj2938】[Poi2000]病毒 AC自动机

    题目描述 二进制病毒审查委员会最近发现了如下的规律:某些确定的二进制串是病毒的代码.如果某段代码中不存在任何一段病毒代码,那么我们就称这段代码是安全的.现在委员会已经找出了所有的病毒代码段,试问,是否 ...

  10. 【题解】SDOI2009Bill的挑战

    这题好像状压的做法比较的无脑?但想记录一下容斥的做法,感觉自己对于容斥简直一无所知.这道题目容斥的解法我也是看了题解才会的.如有雷同,是我看的(*/ω\*)我们可以首先枚举当前字符串与给定的哪 \(k ...