description
背景:
%@是用来打印对象的, 其实%@的本质是用于打印字符串
只要利用%@打印某个对象, 系统内部默认就会调用父类的description方法
调用该方法, 该方法会返回一个字符串, 字符串的默认格式 <类的名称: 对象的地址>
重写:
可以重写description方法, 返回我们需要打印的内容
只要利用%@打印对象, 就会调用description
如果打印的是对象就会调用 - 号开头的description方法()
注意:
在description方法中尽量不要使用self来获取成员变量
因为如果经常在description方法中使用self, 可能会不小心就写成了 ...%@, self
如果在description方法中利用%@输出self会造成死循环
如果通过%@打印对象就会调用 -号 开头的(开发中的绝大多数情况)
如果通过%@打印类对象就会调用 +号 开头的
