OC 面试题小结

如何传过来的obj对象恰好 就是原来的这个对象 当我们对这个对象进行release 操作时  实际上也是对 传递进来的obj对象 进行release操作 很有可曾 这个obj对象被我们无辜的释放了  这是 在通过_obj访问一个废弃的对象 就会导致程序异常crash 

简述分类的实现原理

分类的实现原理是由运行时来决议的 

不同分类中 含有相同方法 最终生效 取决于是谁最终参与编译

分类中添加的方法 恰好与宿主类方法同名  分类方法 会覆盖宿主类方法 (这里说的覆盖 是消息传递中 优先查找数组靠前的元素  实际上数组的方法还是存在的 我们可以通过一些特殊的方法进行调用)

KVO的实现原理

KVO 是 OC 对观察者模式的一种实现

Apple 使用了 isa混写技术(isa - swizzling) 来动态运行时为某一个类添加子类 重新set方法 同时把原有类的isa指针 指向新创建的这个类上面

能否给分类添加成员变量

可以通过关联对象 来添加成员变量 

©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

  • Swift1> Swift和OC的区别1.1> Swift没有地址/指针的概念1.2> 泛型1.3> 类型严谨 对...
    cosWriter阅读 13,911评论 1 32
  • 转至元数据结尾创建: 董潇伟,最新修改于: 十二月 23, 2016 转至元数据起始第一章:isa和Class一....
    40c0490e5268阅读 5,901评论 0 9
  • 1.设计模式是什么? 你知道哪些设计模式,并简要叙述?设计模式是一种编码经验,就是用比较成熟的逻辑去处理某一种类型...
    龍飝阅读 6,655评论 0 12
  • 1.OC里用到集合类是什么? 基本类型为:NSArray,NSSet以及NSDictionary 可变类型为:NS...
    轻皱眉头浅忧思阅读 5,257评论 0 3
  • “妈妈,我中奖了,中大奖了!”一进家门,儿子就用兴奋得变调的声音说。 “噢,中什么奖了?”我饶有兴致地问。 “彩票...
    江苏苇笛阅读 3,424评论 1 3

友情链接更多精彩内容