A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

© jing397 中级黑马   /  2015-10-10 21:30  /  937 人查看  /  0 人回复  /   0 人收藏 转载请遵从CC协议 禁止商业使用本文

类方法

虽然之前的范例都是向类的实例发送消息,但你也可以向类自身发送消息。(这里的类,可以被理解为由运行时生成的 类 的对象。)向一个类发送消息时,该方法必须在之前被声明为类方法,而不是实例方法。类方法和 C++ 中的静态方法很相似。

你通常会将类方法用作工厂方法,借以创建该类的新的实例或者访问与该类相关的某些共有信息。类方法的声明语法和实例方法的十分相像,不同之处是方法类型标识符是一个 + 加号,而不是 – 减号。

下面的例子展示了如何把一个类方法当作该类的工厂方法进行调用。在本例中,array 方法是 NSArray 类的一个类方法,并且被 NSMutableArray 类继承。它会给这个类的新实例分配内存并将这个实例初始化,最后把它返回给你的代码。

NSMutableArray *myArray = nil;  // nil 本质上等同于 NULL
// 创建一个新数组,并将其赋值给 myArray 变量。
myArray = [NSMutableArray array];

0 个回复

您需要登录后才可以回帖 登录 | 加入黑马