第 21 课2026.09.30
把不同实现类的摘要对象放入同一个有类型约束的数组。
第 21 课:用协议类型数组统一保存对象
- 日期:2026-09-30
- 课程序号:第 21 课
- 知识点:
NSArray<id<LessonSummary>> *
用途或适用场景
把不同实现类的摘要对象放入同一个有类型约束的数组。
核心概念
轻量泛型约束数组元素必须采纳协议,读取时仍通过协议属性。
最小代码或操作示例
objective-c
NSArray<id<LessonSummary>> *items = @[lesson, chapter];
for (id<LessonSummary> item in items) {
NSLog(@"%@", item.summary);
}3~5 分钟练习
再添加一个采纳协议的对象并遍历。
参考答案
新对象可加入数组,循环继续只依赖 summary 契约。
与上一课的联系
第 20 课让函数统一接收两个协议采纳者;本课只新增协议类型数组;下一课可把数组传给统一展示函数。
时效校验
时效校验:2026-09-30(Objective-C 当前语言文档;协议限定类型与轻量泛型未见废弃标记。)