- 1
- 0
- 约5.53千字
- 约 8页
- 2026-10-12 发布于河北
- 举报
iOS开发高频面试题及详细答案(实战版)
一、Objective-C基础核心面试题
1.讲一下OC的消息机制,objc_msgSend执行流程
OC本质是消息传递机制,所有方法调用本质都是给对象发送消息,核心函数是objc_msgSend。整体执行流程分为三步:
第一步:查找方法缓存
调用方法时,首先通过对象的isa指针找到对应的类对象,优先在类的方法缓存列表(cache)中查找方法实现。缓存采用哈希表存储,查询速度极快,如果命中直接执行方法,结束流程。
第二步:查找方法列表
缓存未命中时,遍历当前类的methodList方法列表查找,如果找到,将方法加入缓存,再执行方法。如果当前类没有该方法,沿着父类指针逐级向上查找父类的方法列表,直到根类NSObject。
第三步:消息动态解析与转发
如果整个继承链都找不到方法,不会直接崩溃,会进入OC的消息容错机制:
1.动态解析:调用+resolveInstanceMethod:或+resolveClassMethod:,开发者可以动态添加方法实现;
2.快速转发:调用-forwardingTargetForSelector:,可以将消息转发给其他对象处理;
3.完整转发:调用-methodSignatureForSelector:生成方法签名,再通过-forwardInvocation:
您可能关注的文档
- IGCSE中文(母语0509)模拟试卷(含详细答案).docx
- iHandy 校招笔试真题及详细参考答案.docx
- IICL国际儿童领导力等级考试(中级)全真试题及详细答案.docx
- IIS 面试题及详细答案(实战完整版).docx
- Illustrator专业实操考试试题(含详细答案).docx
- ImportNew高频Java面试题及详细答案(实战完整版).docx
- IMS信息管理系统综合试题及详细答案.docx
- INCW二级考试真题试卷(含详细答案解析).docx
- InDesign专业技能考核试题(含详细答案).docx
- INIT人格测试(完整版题库+详细解析).docx
- 2026年及未来5年中国NFV行业市场供需格局及行业前景展望报告.docx
- 2026年及未来5年中国PCB覆铜板行业发展运行现状及投资策略研究报告.docx
- 2026年及未来5年中国专利版权申请行业市场运营现状及投资战略咨询报告.docx
- 2026年及未来5年中国OTC药品行业市场发展数据监测及投资潜力预测报告.docx
- 2026年及未来5年中国LNG加气站设备行业发展前景预测及投资战略咨询报告.docx
- 2026年及未来5年中国NAND闪存卡行业市场调查研究及投资前景展望报告.docx
- 2026年及未来5年中国一次性使用人体静脉血样采集容器行业发展运行现状及投资潜力预测报告.docx
- 2026年及未来5年中国一次性纸杯架行业市场全景评估及投资规划建议报告.docx
- 2026年及未来5年中国一次性医用采血针行业市场发展数据监测及投资战略规划报告.docx
- 2026年及未来5年中国一次性塑料杯行业发展运行现状及投资潜力预测报告.docx
原创力文档

文档评论(0)