在上一篇文章中,主要讲解了多线程相关的一些概念,包括线程、多线程编程及优缺点,现在我们就来深入探讨一下安全隐患中的...[作者空间]
说起多线程编程,大家应该都不陌生,从字面上理解,就是利用多线程技术编程。那么线程又是什么呢?今天我们就一起来探讨一...[作者空间]
上一篇文章中,我们了解到,在编译阶段,每一个Category都是一个独立的结构体,其中包含实例方法、类方法、属性和...[作者空间]
Category对我们并不陌生,相信大家在开发过程中都有用过。使用较多的场景,我猜应该有2个: 在没有拿到源码的情...[作者空间]
通过前面几篇文章,我们已经了解了KVO与KVC的内部实现逻辑:KVO通过运行时实现中间类,当被监听的值发生改变时,...[作者空间]
前两篇文章主要讲解了KVC的基本使用和赋值操作的实现,今天我们来看一下是如何通过key进行取值的。 其步骤大致如下...[作者空间]
上篇文章留了个彩蛋,我们只是声明了成员变量height 和 weight,但是我们通过 setValue: for...[作者空间]
KVC(Key-value coding)键值编码,从字面意思来看,就是可以通过对象的key名进行访问,达到存取值...[作者空间]
上篇文章我们通过一个简单的例子,讲述了KVO的基本使用情况,下面我们来继续深究KVO的本质是什么。 想要探究本质,...[作者空间]
在开发过程中,经常会对某一个值进行特定的处理,比如一个按钮是否被选中等等。这时候就会用到KVO。所谓KVO简单来讲...[作者空间]
在上篇文章中,我们通过方法调用,间接证明了isa指针与superClass指针的指向,这篇文章我们通过isa的实现...[作者空间]
在上篇文章中,我们了解到OC对象分为实例对象、类对象和元类对象三种。 实例对象主要存放有isa指针和成员变量的值;...[作者空间]
前面几篇文章主要讲解了NSObject实例对象在内存中如何分布,但是我们都知道一个类中,肯定不止存在成员变量,还有...[作者空间]
在上一篇文章中,我们了解到继承体系中的实例对象在内存中占用情况,具体可参考继承体系中的内存分布。 看完上一篇文章,...[作者空间]
上一篇文章中,我们知道了一个NSObject对象,因为只有一个isa指针,在64位环境下系统分配了16个字节,但是...[作者空间]