- 8
- 0
- 约9.42千字
- 约 8页
- 2026-03-12 发布于河北
- 举报
iOS开发面试题及答案
一、基础语法与OC特性
1.说下OC中Category(分类)和Extension(延展)的区别,实际开发中你怎么用?
答案:首先从定义上来说,Category有自己的.h和.m文件,能给已有的类(包括系统类,比如NSString、UIView)添加方法,不能直接加属性(除非用runtime关联对象);Extension更像类的私有扩展,一般写在.m文件里,或者单独的.h文件(但很少这么做),可以添加私有属性、成员变量和方法声明,这些内容只有原类能访问。
实际用的时候,Category主要是拆分代码(比如把UIView的布局方法、事件处理方法分开写在不同分类里,避免单个文件太臃肿),或者给系统类加常用工具方法(比如给NSString加判断是否为空、手机号验证的方法)。Extension的话,主要是声明类的私有属性,比如控制器里的子控件、不需要暴露给外部的模型对象,还有私有方法的声明,防止方法警告。
另外要注意,Category里如果写了和原类同名的方法,会覆盖原类的方法(因为方法列表里分类的方法在前面),如果多个分类有同名方法,谁最后编译谁生效。Extension不会有这个问题,因为它的方法实现还是在原类的.m里。
2.OC中的@property关键字,你常用的修饰符有哪些?assign和weak的区别是什么?
答案:常用的修饰符分三类吧,原子性(at
您可能关注的文档
- A2驾驶证科目一考试题及答案.docx
- A3驾照理论考试题库及答案.docx
- A3科目一考试题库及答案.docx
- ACAA考试题库及答案.docx
- ACCA 典型试题及答案解析.docx
- ACCA典型考试题目及答案.docx
- ACCA核心科目考试题型及答案解析.docx
- ACM基础试题及答案.docx
- ACM竞赛试题及答案.docx
- ACT考试典型题型及答案解析.docx
- T∕SATA 026-2021 深圳市校外集中配送学生餐操作规范.docx
- T∕SATA 066-2023 小作坊食品 熟肉制品.docx
- T∕SATA 084-2025 适老易食食品(适老照护食).docx
- T∕SATA 046-2023 蔬菜水果中甲基异柳磷的快速检测 胶体金免疫层析法.docx
- T∕ZZB 0439-2018 吸湿排汗运动袜.docx
- T∕SATA 072-2024 人兽共患病科普宣传活动指南.docx
- T∕SATA 028-2022 饲料中多元素的测定 电感耦合等离子体发射光谱法.docx
- T∕SATA 068-2024 动物源性食品中氯霉素和甲硝唑残留量的 测定液相色谱-串联质谱法.docx
- T∕ZZB 0261-2017 饲料添加剂溶菌酶.docx
- T∕ZZB 0365-2018 饲料添加剂 斑蝥黄微粒.docx
原创力文档

文档评论(0)