课程目录

1-1 [Swift语言中的面向对象特性] 11.1-11.2Swift中的面向对象类型 (07:21)
1-2 [Swift语言中的面向对象特性] 11.3.1枚举成员值 (09:05)
1-3 [Swift语言中的面向对象特性] 11.3.2枚举原始值 (07:54)
1-4 [Swift语言中的面向对象特性] 11.4结构体与类 (04:56)
1-5 [Swift语言中的面向对象特性] 11.6.1可选链的概念 (05:13)
1-6 [Swift语言中的面向对象特性] 11.6.2使用问号和感叹号 (04:12)
1-7 [Swift语言中的面向对象特性] 11.7.1-2访问范围和级别 (09:15)
1-8 [Swift语言中的面向对象特性] 11.7.3使用访问级别**实践 (09:50)
2-1 [属性与下标] 12.1.1存储属性概念 (10:49)
2-2 [属性与下标] 12.1.2延迟存储属性 (07:34)
2-3 [属性与下标] 12.2计算属性 (08:55)
2-4 [属性与下标] 12.3属性观察者 (05:00)
2-5 [属性与下标] 12.4静态属性 (11:48)
2-6 [属性与下标] 12.5使用下标 (10:11)
3-1 [方法] 13.1实例方法 (06:32)
3-2 [方法] 13.2静态方法 (04:58)
4-1 [构造与析构] 14.1.1构造函数概念和默认构造函数 (10:02)
4-2 [构造与析构] 14.1.2构造函数与存储属性初始化 (05:00)
4-3 [构造与析构] 14.1.3使用外部参数名 (04:37)
4-4 [构造与析构] 14.2构造函数重载 (06:54)
4-5 [构造与析构] 14.3析构函数 (04:20)
5-1 [类继承] 15.1从一个示例开始 (03:31)
5-2 [类继承] 15.2.1构造函数调用规则 (06:51)
5-3 [类继承] 15.2.2构造过程安全检查 (19:04)
5-4 [类继承] 15.2.3构造函数继承 (03:50)
5-5 [类继承] 15.3重写 (10:09)
5-6 [类继承] 15.4.1使用is进行类型检查 (03:18)
5-7 [类继承] 15.4.2使用as、as!和as?进行类型转换 (13:23)
5-8 [类继承] 15.4.3使用Any和AnyObject类型 (03:31)
6-1 [扩展] 16.1-16.2扩展概念和扩展声明 (03:52)
6-2 [扩展] 16.3扩展计算属性 (04:12)
6-3 [扩展] 16.4扩展方法 (04:32)
6-4 [扩展] 16.5扩展构造函数 (02:57)
6-5 [扩展] 16.6扩展下标 (05:27)
7-1 [协议] 17.1协议概念 (04:05)
7-2 [协议] 17.2协议定义和遵从 (04:44)
7-3 [协议] 17.3协议方法 (10:25)
7-4 [协议] 17.4协议属性 (06:14)
7-5 [协议] 17.5面向协议编程 (20:49)
7-6 [协议] 17.5.6面向协议编程示例:表视图中使用扩展协议 (06:29)
8-1 [泛型] 18.1-18.2泛型概念和泛型函数 (13:11)
8-2 [泛型] 18.3泛型类型 (10:44)
8-3 [泛型] 18.4泛型扩展 (03:18)
9-1 [Swift内存管理] 19.1Swift内存管理概述 (16:15)
9-2 [Swift内存管理] 19.2强引用循环 (09:11)
9-3 [Swift内存管理] 19.3.1弱引用 (05:08)
9-4 [Swift内存管理] 19.3.2无主引用 (05:38)
9-5 [Swift内存管理] 19.4闭包中的强引用循环 (07:40)
10-1 [错误处理] 20.1Cocoa错误处理模式 (05:15)
10-2 [错误处理] 20.2do-try-catch错误处理模式 (05:01)
10-3 [错误处理] 20.2.1-2捕获错误和错误类型 (04:23)
10-4 [错误处理] 20.2.3声明抛出错误 (09:23)
10-5 [错误处理] 20.2.4在函数或方法中抛出错误 (02:46)
10-6 [错误处理] 20.2.5try问号和try感叹号的使用区别 (04:37)