第17条:实现description方法

自定义类需要自己覆写description方法,否则打印信息时就会调用NSObject类所实现的默认方法。(如果不覆写,只会输出类名和对象的内存地址的信息,这只有在判断两个指针是否指向同一对象时才有用处。)

debugDescription方法,此方法的用意与description非常相似。区别在于,debugDescription方法是开发者在调用器debugger)中以控制台命令打印对象时才调用的。

例:LLDB的“po”命令可以完成对象的打印(print-object)工作。

1、一般普通描述信息,实现description方法,返回一个有意义的字符串来描述该实例。
2、若想在调试时打印出更详尽的对象描述信息,则实现debugDescription方法。
3、description和debugDescription都定义在NSObject协议中。

时间: 2024-10-15 21:52:41

第17条:实现description方法的相关文章

[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.nam

OC语言学习 (六) 继承、多态,构造方法,description方法

声明父类Animal继承自NSObject Animal.h #ifndef oc_Animal_h #define oc_Animal_h @interface Animal : NSObject { @public int weight; } - (void)eat; //重写默认构造方法 - (id) init; //自定义构造方法 - (id) initWithWeight:(int)newWeight; @end #endif Animal.m #import <Foundation/

目标设立(17条)及时间管理(26条)

目标设立(17条)及时间管理(26条) 目标设立及时间管理是成功最重要的技巧. 行动是成功最重要的关键,请你百分之百的彻底实践,执行 每天进步一点点 有很多人想要行动.他知道他要行动.可是他还没有行动,有一个很重要的原因是因为他缺乏一些技巧和方法. 时间管理的源头来自于目标设定. 运用以下的关键技巧和方法,一个礼拜以后你会有很大的一个转换. 分享一些成功的技巧和方法: 一.目标设定和达成的关键(17条) 1.时间管理第一点就是要有一个明确的目标. 2.优先顺序你要排好. 3.目标要有一个期限.(

iOS开发入门——17条 Swift 最佳实践规范(下)

文章来源:http://www.zretc.com/technologyDetail/433.html 承接上文:iOS开发入门--17条 Swift 最佳实践规范(上) 9.单例(Singletons) 在Swift中单例是很简单的: class ControversyManager { static let sharedInstance = ControversyManager()} Swift 的 runtime 会保证单例的创建并且采用线程安全的方式访问. 单例通常只需要访问"share

iOS开发入门——17条 Swift 最佳实践规范(上)

文章来源:http://www.zretc.com/technologyDetail/432.html 前言 这篇IOS开发入门文章是我根据在 SwiftGraphics 工作时的一系列笔记整理出来的.文中大多数建议是经过深思熟虑的,但仍可以有其他类似的解决方法.因此,如果其他方案是有意义的,这些方案会被添加上去. 这个最佳实践不是强加或者推荐 Swift 在程序.面向对象或者函数风格上的应用.更重要的是,这里要讲述的是务实的方法.如有需要的话,某些建议可能会集中在面向对象或者实用的解决方法.

黑马程序员&mdash;&mdash;【黑马视频笔记】OC语言基础之description方法

    1.description方法的一般用处 1: // 指针变量的地址 2: NSLog(@"%p", &p); 3: // 对象的地址 4: NSLog(@"%p", p); 5: // <类名:对象地址> 6: NSLog(@"%@", p); .csharpcode, .csharpcode pre { font-size: small; color: black; font-family: consolas, &

雅虎付出的34条网站加速方法

雅虎给出的34条网站加速方法 雅虎给出了优化网站加载速度的34条法则(包括Yslow规则22条) 详细说明,下载转发 ponytail 的译文(来自帕兰映像). 1.Minimize HTTP Requests 减少HTTP请求 图片.css.script.flash等等这些都会增加http请求数,减少这些元素的数量就能减少响应时间.把多个JS.CSS在可能的情况下写进一个文件,页面里直接写入图片也是不好的做法,应该写进CSS里,利用 CSS sprites 将小图拼合后利用background

Description方法&amp;&amp;SEL类型

description方法和sel数据类型 一.description方法 Description方法包括类方法和对象方法.(NSObject类所包含) (一)基本知识 -description(对象方法) 使用NSLog和@%输出某个对象时,会调用对象的description方法,并拿到返回值进行输出. +description(类方法) 使用NSLog和@%输出某个对象时,会调用类对象的description方法,并拿到返回值进行输出,把整个对象一次性打印出来,打印对象使用%@. 使用@%打

Description方法&amp;&amp;SEL数据类型

description方法和sel数据类型 一.description方法 Description方法包括类方法和对象方法.(NSObject类所包含) (一)基本知识 -description(对象方法) 使用NSLog和@%输出某个对象时,会调用对象的description方法,并拿到返回值进行输出. +description(类方法) 使用NSLog和@%输出某个对象时,会调用类对象的description方法,并拿到返回值进行输出,把整个对象一次性打印出来,打印对象使用%@. 使用@%打