標籤:des style blog io color os sp for strong
description是所有類都有的一個方法。
我們重寫這個方法,可以自訂執行個體輸出的資訊。
比如我們建立一個Person類:
在.h檔案中添加兩個屬性:
#import <Foundation/Foundation.h>@interface Person : NSObject@property (strong, nonatomic) NSString *name;@property (assign, nonatomic) int age;@end
在.m檔案中重寫description方法:
#import "Person.h"@implementation Person- (NSString *)description{ return [NSString stringWithFormat:@"<%p> - name: %@, age: %d", self, _name, _age];}@end
我們調用一下:
Person *person = [[Person alloc] init];person.name = @"XiaoMing";person.age = 28;NSLog(@"person - %@", person);
這時控制台會輸出:
person - <0x7fa20bc18d10> - name: XiaoMing, age: 28
這個是我description中自訂的輸出方法。
如果我們沒有重寫description方法,控制台輸出的結果則為:
person - <Person: 0x7fccd1e1c5f0>
總結一下:
也就是說當我們把該類的所有屬性都輸出至控制台時,我們可以重寫description方法,方便我們能隨時觀察類的各個屬性。
PS: 沒有重寫description方法時,預設只會顯示列印的類名和類的記憶體位址。
IOS重寫description方法,自訂控制台(log)資訊