- 0
- 0
- 约6.41千字
- 约 10页
- 2026-10-12 发布于河北
- 举报
iOS开发面试题(含详细答案·2026实操版)
说明:本套面试题整理一线互联网公司真实面试高频考点,覆盖Swift基础、内存管理、多线程、UI原理、沙盒、工程优化、实战场景问题,答案贴合开发实操,无书面化套话,适配初中级iOS开发者面试备考。
一、Swift核心基础(高频必问)
1、简述逃逸闭包与非逃逸闭包的区别,以及实际使用场景
答案:
闭包作为函数参数时,根据调用时机分为非逃逸闭包和逃逸闭包,核心区别是闭包是否会脱离当前函数作用域执行。
1.非逃逸闭包:默认状态,无需额外标记。闭包会在函数执行过程中、函数结束前完成调用,生命周期完全在函数作用域内,不会脱离当前函数。编译器可做内存优化,性能更高。
2.逃逸闭包:需用@escaping标记。闭包的执行时机晚于函数执行结束,会脱离当前函数作用域,常见于异步回调、网络请求、延时任务等场景。
实操场景:
非逃逸:数组遍历forEach、普通排序回调等同步操作;
逃逸:封装网络请求、延时执行、GCD异步回调、闭包属性存储。
补充:逃逸闭包内部引用当前对象时,极易产生循环引用,必须使用weak、unowned修饰。
2、Swift中struct和class的核心区别
答案:
1.类型本质:struct是值类型,class是引用类型。值类型赋值、传参时会完整拷贝一份数据,新旧对象相互独立;引用类型仅拷贝内存地址,多个对象共
您可能关注的文档
最近下载
- 合规红线与避坑实操手册(2026)GBT 5059.5-2014钼铁 硅含量的测定 硫酸脱水重量法和硅钼蓝分光光度法.pptx VIP
- 深度解析(2026)《GBT 15057.5-1994化工用石灰石中二氧化硅含量的测定 钼蓝分光光度法》.pptx VIP
- 合规红线与避坑实操手册(2026)《GBT 15057.5-1994化工用石灰石中二氧化硅含量的测定 钼蓝分光光度法》.pptx VIP
- 宣贯培训(2026年)《GBT 15057.5-1994化工用石灰石中二氧化硅含量的测定 钼蓝分光光度法》.pptx VIP
- 深度解析(2026)《GBT 15057.9-1994化工用石灰石中磷含量的测定 钼蓝分光光度法》.pptx VIP
- 宣贯培训(2026年)GBT 15057.9-1994《化工用石灰石中磷含量的测定 钼蓝分光光度法》.pptx VIP
- (2026年)实施指南《GBT15057.9-1994化工用石灰石中磷含量的测定钼蓝分光光度法》.pptx VIP
- 《GBT15057.10-1994化工用石灰石中灼烧失量的测定重量法》(2026年)实施指南.pptx VIP
- 《GBT15057.3-1994化工用石灰石中盐酸不溶物含量的测定重量法》(2026年)实施指南.pptx VIP
- 化工用石灰石中盐酸不溶物含量的测定 重量法.docx VIP
原创力文档

文档评论(0)