【Effective Objective-C 2.0 读书笔记】

2016-03-05  本文已影响19人  DoubleLife不可以

第十七条:实现description方法

测试程序时,经常需要打印并查看对象信息。

最常用的做法是:

NSLog(@“object = %@“,object);

在构建需要打印到日志的字符串时,object对象会收到description消息,该方法所返回的描述信息将取代“格式字符串”里的“%@”。

然而在自定义的类上这么做,则会输出:

object =

与object为数组是输出的信息相比,上面这种内容不太有用。

除非在自己的类里覆写description方法,否则打印信息时,就会调用NSObject类所实现的默认方法。

一般自定义类的description方法通常可以这样实现:

-(NSString *)description{

return [NSStringstringWithFormat:@“<%@: %p, \”%@ %@\”>”, [self class], self, _firstName, _lastName];

}

【要点】

实现description方法返回一个有意义的字符串,用以描述该实例。

若想在调式时打印出更详尽的对象描述信息,则应实现debugDescription方法。

上一篇下一篇

猜你喜欢

热点阅读