一对多广播接收问题

一对多广播接收问题

http://img1.sycdn.imooc.com//climg/5b16442f0001889912520713.jpg

这里为什么要进行类的扩展 才能实现广播接收

而且[teacher new]是什么意思 与init方法有什么区别

进行类的扩展后 调用new方法可以弯沉广播接收吗

正在回答 回答被采纳积分+1

登陆购买课程后可参与讨论,去登陆

1回答
imoocLovers 2018-06-05 16:40:29

①[Teacher new]会执行Teacher类的init方法,创建对象,为对象开辟空间。作用于alloc init方法一样

②使用[Teacher new]这种方式生成的对象,系统不会保存,那么还未接受到广播呢,对象已经不存在了,这样的话,广播操作就没办法完成。

③在类的扩展中声明出Student和Teacher的实例对象,然后再初始化,调用alloc init方法就能接收到广播。

祝学习愉快~

  • 提问者 盛益华通 #1
    那么可否在student.h和teacher.h中直接声明实例对象呢 person.m中也已经导入了student和teacher的头文件了。
    2018-06-05 16:51:35
  • imoocLovers 回复 提问者 盛益华通 #2
    ①你可以尝试写下,看看能否实现。不管结果如何,还是不要这样写,Student类中self就可以表示本类的实例对象了,在本类中声明这个类的实例对象的写法不常见。 ②这个题目不仅仅需要声明实例对象,而且还需要调用init方法将其实例化
    2018-06-05 17:09:06
问题已解决,确定采纳
还有疑问,暂不采纳

恭喜解决一个难题,获得1积分~

来为老师/同学的回答评分吧

0 星
iOS入门:基础语法与常用控件
  • 参与学习       1337    人
  • 提交作业       712    份
  • 解答问题       1878    个

很多人都在疑问没有基础该怎么学习iOS开发?不用担心,本路径采用游戏关卡式的教学模式,并且以经典OC与最新Swift双重结合的教学内容,帮助大家快速掌握两种iOS开发语言基础,去掉“零”标签。

了解课程
请稍等 ...
意见反馈 帮助中心 APP下载
官方微信

在线咨询

领取优惠

免费试听

领取大纲

扫描二维码,添加
你的专属老师