类方法 虽然之前的范例都是向类的实例发送消息,但你也可以向类自身发送消息。(这里的类,可以被理解为由运行时生成的 类 的对象。)向一个类发送消息时,该方法必须在之前被声明为类方法,而不是实例方法。类方法和 C++ 中的静态方法很相似。 你通常会将类方法用作工厂方法,借以创建该类的新的实例或者访问与该类相关的某些共有信息。类方法的声明语法和实例方法的十分相像,不同之处是方法类型标识符是一个 + 加号,而不是 – 减号。 下面的例子展示了如何把一个类方法当作该类的工厂方法进行调用。在本例中,array 方法是 NSArray 类的一个类方法,并且被 NSMutableArray 类继承。它会给这个类的新实例分配内存并将这个实例初始化,最后把它返回给你的代码。 NSMutableArray *myArray = nil; // nil 本质上等同于 NULL // 创建一个新数组,并将其赋值给 myArray 变量。
myArray = [NSMutableArray array];
|