用于通知某个对象该做什么即通知对象去执行某动作

1.1. 在Objective-C中,方括号还有其它意义:它们用于通知某个对象该做什么。
例如:
[shape draw]; //这句话说明,通知对象shape去执行draw这个动作,例如让一个rectangle去画一个矩形。
1.2. 在Objective-C中,通知对象执行某种操作,被称为:发送消息。
例如:
[shape draw]; //表示向对象shape发送draw消息。

创建新对象

为了创建新对象,我们需要向相应的类发送new消息。
该类接收并处理完new消息后,我们就会得到一个可以使用的新对象实例了。
例如:
id Shape[3];
Shape[0] = [Circle new]; //向Circle类发送new消息,则创建了新对象,并把该新对象赋给Shape[0].

在类中向超类发送消息

3.1 例如:
@interface Circle : Shape
@end // Circle
@implementation Circle
-(void) SetFillColor:(ShapeColor) c {
if (c == kRedColor) {
c = kGreenColor;
}
[super setFillColor:c]; // 向超类Shape发送消息,超类将会执行它的setFillColor方法。
}
@end //Circle
3.2 例如:
self = [super init]; //作用是,使超类NSObject完成它的初始化工作。并且如果返回一个新对象,
//则需要更新self。

Objective-C 理解之方括号[ ]的使用相关推荐

  1. 《Design of Computer Programs》学习笔记(2 - 1)Back of the Envelope - Lesson 2

    Back of the Envelope envelope n.信封(金山词霸) Lesson 2 视频链接: Lesson 2 - Udacity 1. 练习:Zebra Puzzle zebra ...

  2. 人生关键角色转变:走向职场人

    大家好,我是煎鱼. 最近在内部分享了一次职场成长相关的内容,这也是第一次在半公开场合分享这块的内容. 内容方向主要是:如何在随机的世界中更好的从校园人,成为一个更适应社会的职场人,以便于未来更快更好的 ...

  3. 创建可启动 WinPE 介质|使用 DISM 修改 Windows 映像

    创建可启动 WinPE 介质 使用 DISM 修改 Windows 映像 # 使用 DISM 装载映像 DISM /Mount-image /imagefile:<path_to_Image_f ...

  4. 一分钟让你明白OKR考核

    一分钟让你明白OKR考核 HR·易 HR·易,是由一群热爱人力资源人士专心运营的HR社区,聚焦于HR的招聘.社交.资讯.工具与成长.HR,so easy! 一.什么是OKR体系? OKR体系的全称是O ...

  5. OKR:从0到100

    方弟 读完需要 10 分钟 速读仅需 3 分钟 工作时间周期,归纳为 5 个关键步骤:选方向.定目标.控进度.带团队.排干扰. 绩效管理的本质:不是考核员工,而是激发员工潜能,帮助员工成长,从而出色实 ...

  6. 绩效管理体系-OKR

    工作时间周期,归纳为 5 个关键步骤:选方向.定目标.控进度.带团队.排干扰. 绩效管理的本质:不是考核员工,而是激发员工潜能,帮助员工成长,从而出色实现组织目标. 全球绩效管理变革领先实践: 1.I ...

  7. 手把手教你绩效管理体系-OKR

    方弟 读完需要 10 分钟 速读仅需 1 分钟 工作时间周期,归纳为 5 个关键步骤:选方向.定目标.控进度.带团队.排干扰. 绩效管理的本质:不是考核员工,而是激发员工潜能,帮助员工成长,从而出色实 ...

  8. Objective C内存管理之理解autorelease------面试题

    Objective C内存管理之理解autorelease Autorelease实际上只是把对release的调用延迟了,对于每一个Autorelease,系统只是把该Object放入了当前的Aut ...

  9. Objective C 中的nil,Nil,NULL和NSNull理解

    kenyo网友的原创说法是:做IOS开发的估计都对Objective-C的内存管理机制很头疼,一不小心程序就会出内存泄露,我也不例外,前几天被指针的置nil与release给搞惨了,今和大家详细解说一 ...

最新文章

  1. 2.2元组介绍+字符串操作
  2. spring+cxf调用webservice接口
  3. Fabric 代码发布
  4. leetcode 334. Increasing Triplet Subsequence | 334. 递增的三元子序列(一种较trick的解法)
  5. 如何下载 SAP Cloud for Customer Cloud Application Studio
  6. 毕业设计word 表格标题 图表标题
  7. 从Commons CLI迁移到picocli
  8. JavaScript Onclick事件解释
  9. ubantu 单用户模式进入系统
  10. 从传统企业谈大数据的战略意义
  11. 欢迎加入互联网架构师群
  12. Unity3D脚本访问与参数传递
  13. day55-负载均衡之lvs
  14. 戴尔服务器开机自动关机,戴尔台式电脑自动关机怎么办
  15. 08-02-loggin-模块
  16. “麒”聚信创,共赢未来——信创解决方案分享会(首场)成功举办
  17. Android实现简单账号密码登录
  18. 调整字体间距属性和文字换行属性
  19. nginx服务器的文档根目录,nginx更改根目录
  20. Python 深度学习--学习笔记(十五)

热门文章

  1. 30 个纯 HTML5 实现的游戏
  2. 计算机信息安全专业主要学习什么,信息安全专业学什么 课程有哪些
  3. C# 导出Excel文件 打开Excel文件格式与扩展名指定格式不一致。
  4. 微信开发者工具更换默认用户存储目录(User Data)方法
  5. 问题描述:宏代码导致无法打开文件
  6. Eclipse基础知识
  7. Postman|网页调试工具
  8. 解决Jenkins中Maven本地仓库更新不及时的问题
  9. python ERROR: Could not find a version that satisfies the requirement requests (from versions: none)
  10. 【移动端二】夜神模拟器