編寫高質量OC程式碼52建議總結:17.實現describtion方法

viiimaus發表於2017-02-16
 在除錯程式時,經常需要直接列印物件
 nslog(@"object = %@", object);
 列印一個陣列物件
 輸出:
object = {
    "a",
    "b"
 }
 如果列印的是一個自定義類
 object = <XXXXXXX:0x7fd9adf300600>
 上面的列印資訊不太有用,除非在自定義類中覆寫describtion方法,否則列印資訊就會呼叫NSObject類所實現的預設方法。
 -(NSString *)description{
 return [NSString stringWithFormat:@"%@%@%@", @"1",@"2",@"3"];
 }
 在實現describtion方法時,沒有固定規則可循,應該根據當前物件來決定在describtion方法裡列印何種資訊。
 debugDescription方法在LLDB“po命令”時呼叫。
-(NSString *)debugDescription{
 return [NSString stringWithFormat:@"%@%@%@", @"1",@"2",@"3"];
 }

 

總結:

1.實現describtion方法返回一個有意義的字串

2.在除錯中列印出詳細的資訊,實現debugDescription方法

相關文章