第一部分 理论 3
第1章 Objective—C基础 3
1.1 Mac OS X概述 5
1.2 iOS概述 6
1.3 Cocoa概述 7
1.3.1 Cocoa的概念 7
1.3.2 Cocoa框架 7
1.4 Objective—C概述 8
1.5 创建最简单的Objective—C程序 8
1.5.1 使用Xcode 8
1.5.2 Objective—C项目文件扩展名 11
1.6 解析testApp Objective—C程序 11
1.6.1 #import 11
1.6.2 NSLog()和“@”字符串 12
1.6.3 AutoreleasePool 12
1.6.4 [pool drain] 12
1.6.5 return 12
1.7 Obiective—C基本数据类型 13
1.7.1 NSString数据类型 13
1.7.2 NSInteger和CGFloat 13
1.7.3 布尔类型 14
1.8 NSString字符串与其他类型的转换 15
第2章 面向对象编程程(一) 21
2.1 使用Xcode创建Objective—C类 23
2.2 @interface部分 25
2.2.1 实例变量 26
2.2.2 类和实例方法 26
2.3 implementation部分 28
2.4 Program部分 29
2.5 实例变量的访问以及数据的封装 31
2.6 对象之间引用的应用示例 33
2.6.1 斧头类(Axe类)的定义 33
2.6.2 人类(Person类)的定义 34
2.6.3 在main函数中使用Person对象 35
第3章 面向对象编程(二) 39
3.1 对象的初始化 41
3.2 将类的实现文件与接口文件合并 43
3.3 合成存取器方法 45
3.4 使用点运算符访问属性 46
3.5 类方法和全局静态变量 47
3.6 self关键字 50
3.7 id类型 51
3.8 使用@try异常处理 53
第4章 继承与多态 59
4.1 继承 61
4.1.1 Objective—C中的继承 61
4.1.2 添加新的方法 63
4.1.3 添加新的实例变量 64
4.1.4 重写方法 66
4.1.5 Super关键字 67
4.1.6 @class指令 70
4.2 多态 71
4.2.1 静态绑定 71
4.2.2 动态绑定 73
4.2.3 编译时和运行时检查 73
第5章 内存管理 77
5.1 内存管理概述 79
5.2 引用计数 79
5.2.1 引用计数的定义 79
5.2.2 引用计数工作原理 79
5.2.3 内存管理方法 80
5.2.4 引用计数的应用 80
5.3 对象所有权 82
5.4 内存管理的策略 82
5.5 访问方法中的保留和释放 83
5.6 特性扩展 86
5.7 自动释放 87
5.7.1 自动释放池概述 87
5.7.2 自动释放池的应用 88
5.7.3 自动释放池的适用场合 89
5.8 内存管理规则 90
5.9 垃圾回收 90
第6章 类别、协议和委托 95
6.1 类别 97
6.1.1 为什么需要使用类别 97
6.1.2 创建类别 97
6.1.3 声明类别 98
6.1.4 实现类别 98
6.1.5 使用类别 98
6.1.6 类别的局限性 99
6.2 协议 100
6.2.1 协议的定义 100
6.2.2 创建协议 100
6.2.3 实现协议 100
6.2.4 使用协议 101
6.2.5 协议修饰符 102
6.3 委托 103
6.3.1 委托的定义 103
6.3.2 实现委托 103
6.3.3 使用CommonUser类 105
第7章 Foundation框架 109
7.1 Foundation框架的基础知识 111
7.2 常用的结构体 111
7.3 字符串NSString类 112
7.3.1 创建字符串 112
7.3.2 字符串的大小 113
7.3.3 字符串比较 113
7.3.4 不区分大小写的比较 114
7.3.5 字符串内是否还包含别的字符串 115
7.3.6 截取字符串 116
7.4 可变字符串 116
7.5 NSArray数组 118
7.6 NSMutableArray可变数组 120
7.7 字典 121
7.8 可变字典 123
第二部分 上机 129
上机1 Objective—C基础 129
阶段1 创建Obiective—C程序 130
阶段2 NSString字符串与其他类型的转换 133
上机作业 136
上机2 面向对象编程(一) 137
阶段1 使用Xcode创建Objective—C类 138
阶段2 掌握变量的访问以及数据的封装 144
上机作业 150
上机3 面向对象编程(二) 151
阶段1 Objective—C类对象的初始化 152
阶段2 使用点运算符访问属性 156
上机作业 159
上机4 继承与多态 161
阶段1 继承 162
阶段2 多态 166
上机作业 170
上机5 内存管理 171
阶段1 引用计数器 172
阶段2 特性扩展 176
上机作业 179
上机6 类别、协议和委托 181
阶段1 类别 182
阶段2 协议 186
上机作业 190
上机7 Foundation框架 191
阶段1 字符串 192
阶段2 数组 195
上机作业 198
第三部分 指导学习 201
指导学习1 Objective-C基础、面向对象编程和继承与多态 201
理论部分 202
上机部分 205
阶段1 Objective-C基础 205
阶段2 Objective-C面向对象编程(一) 206
指导学习2 内存管理和Foundation框架 209
理论部分 210
上机部分 212
阶段1 内存管理 212
阶段2 Foundation框架 214