[Objective-c 基础 - 2.10] description方法
A. 实例对象打印-description
1.当使用NSLog函数并且使用%@占位符的时候,会调用对象的-description方法
2.拿到-description的返回值,显示到console中
默认返回指针地址
1 @implementation Person 2 3 - (NSString *)description 4 { 5 return [NSString stringWithFormat:@"age = %d, name=%@", self.age, self.name]; 6 } 7 8 @end 9 10 int main(int argc, const char * argv[]) { 11 @autoreleasepool { 12 Person *p = [[Person alloc] init]; 13 p.age = 33; 14 p.name = @"张三"; 15 NSLog(@"%@", p); 16 } 17 return 0; 18 }
out:
2014-11-13 17:08:53.553 07-description方法[7765:303] age = 33, name=张三
Program ended with exit code: 0
Program ended with exit code: 0
B.类对象+description
提供给类对象使用的对象打印方法,默认返回类名
1 + (NSString *)description 2 { 3 return @"这是一个Person类"; 4 } 5 6 int main(int argc, const char * argv[]) { 7 @autoreleasepool { 8 Class c = [Person class]; 9 NSLog(@"%@", c); 10 } 11 return 0; 12 }
2014-11-13 17:12:15.890 07-description方法[7791:303] 这是一个Person类
Program ended with exit code: 0
Program ended with exit code: 0
C.NSLog的更多功能
1.占位符%p:打印指针地址,重写了实例对象的-description方法之后,可以使用此占位符打印地址
2.宏定义,NSLog提供了各种宏定义变量,如行号__LINE__、文件名__FILE__等
sample: NSLog(@“%d”, __LINE__);
如果一件事情你觉得难的完不成,你可以把它分为若干步,并不断寻找合适的方法。最后你发现你会是个超人。不要给自己找麻烦,但遇到麻烦绝不怕,更不要退缩。
电工查找电路不通点的最快方法是:分段诊断排除,快速定位。你有什么启示吗?
求知若饥,虚心若愚。
当你对一个事情掌控不足的时候,你需要做的就是“梳理”,并制定相应的规章制度,并使资源各司其职。