源项目 https://www.jianshu.com/p/3228bfa3be7d 曾经Swift3写的,业余更新造成年久失修。
ARC全称Automatic Reference Counting,自动引用计数内存管理,是苹果在 iOS 5、OS X Lion 引入的新的内存管理技术。ARC是一种编译器功能,它通过LLVM编译器和Runtime协作来进行自动管理内存。LLVM编译器会在编译时在合适...
Person 以及它的两个分类 Person (Test)、Person (Test2) 都实现了+test和+load两个方法,且 Person (Test2) 最后编译。调用 Person 的+test,并打印 Person 元类对象中的类方法列表,查看打印结果。...
我们可以使用setter方法为currentBalance属性赋值,这是直接的,但缺乏灵活性。
KVO使用三部曲:添加/注册KVO监听、实现监听方法以接收属性改变通知、 移除KVO监听。
作为 iOS 开发者,在面试过程中经常会碰到这样一个问题:在 ARC 环境下autorelease对象在什么时候释放?如果你还不知道怎么回答,或者你只有比较模糊的概念,那么你绝对不能错过本文。...
从以上可以看到,Category 编译之后的底层结构时struct category_t。 objc4源码链接:https://opensource.apple.com/tarballs/objc4/ 下面我们进入Runtime的最新源代码objc4-756.2进行分析。在源代码中与 Category 相关...
网络配图 目录 1. 属性关键字 1.1 原子性 1.2 读写权限 1.3 内存管理 1.4 可空性2. 所有权修饰符3. 相关面试题参考1. 属性关键字有哪些?分类属性关键字原子性atomic、nonatomic读写权限readwrite、readonly...
对于 NSString *string = [[NSMutableArray alloc]init];
我们都知道,面试可能会让人感到压力山大——不管你是第一次参加面试的新手,还是已经有几年开发经验做背书的业内人士,面试都会带来压力。