有时候,类必须先执行某些初始化操作,然后才能正常使用。在Objective-C中,绝大多数类都继承自NSObject这个根类,而该类有两个方法,...
单例模式(singleton)对Objective-C开发者来说并不陌生,常见的实现方式为: 在类中编写名为sharedInstance的方法,...
Objective-C本质上是一门非常动态的语言,NSObject定义了几个方法,令开发者可以随意调用任何方法。这几个方法可以推迟执行方法调用,...
每个块都具备其"固有类型",因而可将其赋给适当类型的变量。这个类型由块所接受的参数及其返回值组成。 此块接受两个类型分别为BOOL及int的参数...
当前多线程编程的核心就是"块"(block)与"大中枢派发"(Grand Central Dispatch, GCD)。这虽然是两种不同的技术,...
调试内存管理问题很令人头疼。向业已回收的对象发送消息是不安全的。这么做有时可以,有时不行。具体可行与否,完全取决于对象所占内存有没有为其他内容所...
Objective-C代码经常出现一些情况,就是几个对象都以某种方式互相引用,从而形成"环"(cycle)。由于Objective-C内存管理模...
对象在经历其声明周期后,最终会为系统所回收,这时就要执行dealloc方法了。在每个对象的生命期内,此方法仅执行一次,也就是当保留计数降为0的时...
引用计数这个概念相当容易理解(参见第29条)。需要执行保留与释放操作的地方也很容易就能看出来。所以Clang编译器项目带有一个"静态分析器"(s...
文集作者