Object-C 基础知识

 --------------------| 浅复制和深复制区别 |-------------------

浅复制(Copy):   只复制,指向对象的指针,不复制引用对象本身。

深复制(mutableCopy):赋值引用对象本身。内存中存在两份独立对象本身,修改A时,A-copy不变


--------------------| 什 么 是 谓 词 |-------------------

通过NSPredicate,给定的逻辑条件作为约束条件,完成对数据的筛选。


--------------------| atomic 和 nonatomic 的 区 别 |-------------------

atomic: 提供多线程安全,防止读写未完成的时候被另一个线程读写,造成数据错误。

nonatomic:在自己管理内存的环境中,解析的访问器保留并自动释放返回值。


--------------------| 常 见 的 O C 数 据 类 型 有 哪 些 |-------------------

1、NSInteger

2、CGFloat

3、NSString

4、NSNumber

5、NSArray

6、NSDate


--------------------| 什 么 是 K V O |-------------------

KVO:一对多,观察者模式,键值观察机制,它提供了观察某一属性变化的方法,简化了代码。


--------------------| 什 么 是 K V C |-------------------

是键值编码,一个对象在调用setValue的时候采用。


--------------------| 什 么 是 懒 加 载 |-------------------

懒加载就是在用到的时候才去初始化,也可理解为延时加载,我觉得最简单的一个例子就是TableView中图片的加载显示,一个延时加载可以避免内存过高,一个异步加载,避免线程堵塞从而提高用户体验。


--------------------| O C 类 里 面 有 两 种(类)方 法 |-------------------

1、静态方法 :静态方法(类方法)的对象是类而不是实例,通常用来创建对象或者工具类。

2、实例方法:实例方法是以+开头的方法, 实例方法是用实例对象访问;


--------------------| property 中 有 哪 些 属 性 关 键 字 |-------------------

1、原子性

2、读写

3、内存管理

4、getter与setter


--------------------| 如 何 访 问 并 修 改 一 个 类 的 私 有 属 性 |-------------------

1、可以通过 KVC获取。

2、也可以通过runtime访问并修改私有属性。


--------------------| A R C 处 理 原 理 |-------------------

ARC是Objective-C编译器的特性,而不是运行时特性或者垃圾回收机制,只要么牛强指针指向对象就会被释放。


--------------------| 如 何 判 断 正 确 重 写 set 方 法 |-------------------

1、判断是否为同一对象

2、release旧对象

3、retain新对象


你可能感兴趣的:(Object-C 基础知识)