Objectiov-c考试题
【Objective-C基础考试知识点】 1. **算术运算符与逻辑运算符**:题目1和2考察了算术运算符的优先级和后缀/前缀自增运算符的使用,理解这些运算符的顺序至关重要。 2. **循环语句**:题目3询问do while与while语句的区别,do while至少会执行一次,而while则可能不执行。 3. **变量赋值与算术操作**:题目4展示了如何通过循环对整数进行位运算,理解位运算和整数除法是解答的关键。 4. **方法签名**:题目5中提到了Objective-C的方法签名,包括方法类型、方法名和返回值类型。 5. **预处理指令**:`#import`和`@class`的用途在于头文件引用,前者会引入整个头文件,后者只是声明类的存在,避免头文件循环引用。 6. **访问控制修饰符**:`@public`、`@protected`和`@private`分别对应公有、保护和私有访问级别,用于控制类的成员变量和方法的可见性。 7. **内存管理原则**:Objective-C遵循“谁创建,谁负责”的内存管理原则,即谁调用`alloc`/`new`/`copy`/`retain`,谁就要负责调用`release`/`autorelease`。 8. **引用计数**:`retainCount`表示对象的引用计数,但通常不直接使用,因为其值可能会受到系统内部操作的影响。 9. **属性设置**:题目10至12讨论了`assign`、`retain`和`copy`属性关键字的使用,理解其对内存管理的影响是必要的。 10. **self与super的使用**:`self`代表当前对象,`super`用于调用父类的方法。 11. **dealloc方法**:在`dealloc`中调用`[super dealloc]`是为了确保父类的资源也能被正确释放。 12. **点语法与下划线语法**:题目14涉及到`self`与实例变量的差异,`self`的点语法会触发KVC或KVO,而直接使用下划线不会。 13. **delegate属性**:通常为`assign`以防止循环引用,因为代理对象通常拥有被代理对象,若互相保留,可能导致内存泄漏。 14. **内存泄漏检查**:题目16分析了内存泄漏的可能性并提出了修改建议。 15. **基本数据类型**:Objective-C的基本数据类型包括`int`、`float`、`BOOL`等。 16. **面向对象特性**:面向对象的三大特性是封装、继承和多态。 17. **继承的作用**:继承允许子类复用父类的属性和方法,提高代码复用,同时可以进行功能扩展。 18. **多态的定义与条件**:多态是指不同对象对同一消息做出不同的响应,条件是统一的接口(通常是父类方法)和消息传递。 19. **上机题**: - 题目1涉及循环与条件判断,计算特定条件下的数值之和。 - 题目2考察对象间的依赖关系以及内存管理,尤其是`init`方法和所有权转移。 - 题目3要求设计学生类并实现相关操作,涉及数组操作、对象创建、属性访问和内存管理。 - 题目4是字符串扩展,通过分类实现特定方法,需要了解Category和正则表达式。 - 题目5涉及合成属性的实现,理解ivar和property的关联。 - 题目6需要实现委托模式,理解委托协议和事件传递机制。 这些知识点覆盖了Objective-C的基础,包括语法、内存管理、面向对象编程以及一些常见的编程概念。掌握这些知识点对于理解Objective-C编程至关重要。
- feng8232013-07-29还算是可以吧,有点儿帮助。但是,内容有点儿乱。
- 粉丝: 0
- 资源: 1
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
最新资源
- (18956428)STM32F103C8T6 小系统原理图 PCB
- (175828796)python全国疫情数据爬虫可视化分析系统(django)源码数据库演示.zip
- 记账本项目市场需求文档(MRD)
- (31687028)PID控制器matlab仿真.zip
- 基于SpringBoot的“在线答疑系统”的设计与实现(源码+数据库+文档+PPT).zip
- (11828838)进销存系统源码
- 记账本项目三大模块原型图
- fed54987-3a28-4a7a-9c89-52d3ac6bc048.vsidx
- (177367038)QT实现教务管理系统.zip
- (178041422)基于springboot网上书城系统.zip