一,可选(Optionals)类型 什么是可选类型呢,简言之,就是用 let/var 定义的一个值,可以为nil。可选类型又课程之为可选项。 二,可选类型的定义 1、在类型后...
我们已经知道,Block的本质就是一个oc对象,那么Block的基类的类型肯定是NSObject了。 要了解Block本质,可以参考我之前的博客:11 iOS底层原理 - B...
大家在面试的时候是不是经常遇到这样的面试题:运行下面的代码,打印结果是是什么?为什么? 这个面试题呢,也就是今天要主要说的内容:Block的值捕获。那么,下面就针对,局部变量...
废话不多说,老规矩,还是来到面试题: 一,block的原理是什么?本质是什么样的? 带着疑问,咋们一起看看block的底层到底长啥样... 研究本质,我们常用的手段就是,就是...
在研究Block本质之前呢,先简单说下,block的语法。 一,Block语法 1. 标准声明与定义 可以拆开来写: 1>声明部分 参数说明: 2> 定义部分,匿名bloc...
废话不多说,老规矩,还是先来道面试题: 一,Category能否添加成员变量?如果可以,如何给Category添加成员变量? 带着问题咋们来看看分类到底能不能添加成员变量.....
首先,要弄明白这两个之间的本质区别,请看我之前的博客06 iOS底层原理 - +load方法本质探究和07 iOS底层原理 - +initialize方法探究 这里只总结两者...
废话不多说,老规矩,先来个面试题: 一,load、initialize方法的区别什么?它们在category中的调用的顺序?以及出现继承时他们之间的调用过程 带着问题我们对i...
废话不多说,还是老规矩,先来个面试题: Category中有load方法吗?load方法是什么时候调用的?load 方法能继承吗? 带着疑惑和问题咋们研究下+load和+in...
废话不多说,老规矩,还是来两道面试题: 一,Category的实现原理;二,Category和Extension的区别 带着问题我们对Category一探究竟 在我们平时开发...
老规矩,还是先来两个面试题: 一,通过KVC修改属性会触发KVO吗?二,KVC的赋值和取值过程是怎样的?原理是什么? 什么是KVC呢? KVC的全称是Key-Value Co...
废话不多说先来几个面试题: 一,iOS用什么方式实现对一个对象的KVO?(KVO的本质是什么?)二,如何手动触发KVO三,直接修改成员变量会触发KVO吗? 通过挖掘KVO的本...
废话不多说,先看两道面试题: OC对象的isa指针指向哪里?instance的isa指向calss对象class的isa指向meta-classmeta-class的isa指...
废话不多说,要了解OC对象的本质,先要明确一点,都有哪些是属于OC的对象:实例对象,类对象,元类对象。 一,Object-C对象 1. instance (实例对象) 即al...
要说明的是,【闭包】和【闭包表达式】不是一回事,你可将【闭包表达式】看作是【闭包】的一种形式。因为闭包还有其他两种形式存在:【全局函数】和【嵌套函数】。一般的,我们所说的闭包...
什么是可选链,下面看个简单的例子就明白了