oc学习经验
来源:互联网 发布:三次元绅士软件 编辑:程序博客网 时间:2024/06/16 19:30
1.重点,需要查询的知识点
2.关于重写init方法
一定要调用super的init方法;初始化父类声明中的一些成员变量和其他属性
因为在初始化的时候,先初始化NSObject类,再初始化字的的成员变量,然后把isa指向子类
-(id) init
{
self = [super init];
if (self !=nil)//如果初始化成功,才有必要进行接下来的初始化
{//初始化成功
}
return self;
}
重写构造方法的目的:是为了让对象创建出来,成员变量就会有一些固定的值,
3、继承和组合 self和super
4、Foundation框架详解常用的数据类型:字符串(NSString)数组(NSArray)字典(NSDictionary)日期与时间(NSDate)日期格式(NSDateFormatter)日历(NSCalendar)定时器(NSTimer)键值编码(KVC)键值监听(KVO)通知中心(NSNotificationCenter)通知(NSNotification)各种数值(NSNumber NSValue NSNull)
5、内存管理(alloc、new、copy、retain、release。Autorelease、strong、weak) ARC
8、类别(Category)协议(protocol)
ARC/MRC(内存管理相关)、runtime(运行时相关)、GCD(多线程相关)是 iOS面试的三大杀器
考察一个面试者基础咋样,基本上问一个 @property 就够了:
@property后面可以有哪些修饰符?
什么情况使用 weak关键字,相比 assign有什么不同?
怎么用 copy关键字?
这个写法会出什么问题: @property (copy) NSMutableArray *array;
如何让自己的类用 copy修饰符?如何重写带 copy关键字的 setter?
这一套问题区分度比较大,如果上面的问题都能回答正确,可以延伸问更深入点的:
@property的本质是什么?ivar、getter、setter是如何生成并添加到这个类中的
@protocol和 category中如何使用 @property
runtime如何实现 weak属性
5.Fundation Kit介绍
Objective -C包括三个新的语言特性:类方法,即由类本身而不是某个示例来处理的方法,@encode()指令;快速枚举。
NSString用来存储人可以直接看懂的文本,NSArray和NSDictionary用来存储对象的集合,这些集合是不可变的,
6.关于组合和聚合
组合:对象的使用是紧耦合的,创建Computer对象会自动的同时创建Cpu对象。(一体机、笔记本)
优:代码的使用是非常简单的。
缺:灵活度不高。
系统的功能。。。
控制器(UIViewController)与视图(UIView)
聚合:对象的使用是松耦合的,创建Computer对象是不会自动的同时创建Cpu对象,需要手动自己指定Cpu对象,如果Cpu对象满足不了需要是可以替换的。(兼容机)
优:灵活度高。
缺:代码的使用略微复杂。
自定义控件:
TRTableView
TRTableViewCell
7.在64位的平台,不管什么类型的指针,其本质是来存放地址,所以任何一个指针类型的变量,其大小只要能容纳下地址就可以,所以都是8个字节。
8.OC 数组只能存放OC对象,不能存放非OC对象类型,比如 int,struct,enum,同时也不能存放空值。
- oc学习经验
- oc 学习
- oc 学习
- OC学习
- OC学习
- OC学习
- OC学习
- 学习经验
- 学习经验
- 学习经验
- 学习经验
- 学习经验
- 学习经验
- OC学习:OC字典NSDictionary
- OC学习:OC中的协议
- OC学习备忘
- Oc 学习笔记
- OC 基础学习笔记
- HDU 1199 Color the Ball
- OpenStack的小笔记
- Linux权限
- 8月7日总结
- 浅析 Linux 中的时间编程和实现原理,第 2 部分: 硬件和 GLibC 库的细节
- oc学习经验
- VC通过窗口句柄获取应用程序路径
- 黑马程序员 oc随记 协议与代理模式
- LeetCode(187)Repeated DNA Sequences
- java堆栈迷宫算法
- Linux下SSH命令使用方法详解
- 安装python第三方库:xlwt及出错ImportError: No module named setuptools的解决方法
- hive-- 请不要用动态分区(如果分区可以确定)
- MyEclipse上整合spring,mybatis报错