1.description方法的一般用处

   1:   // 指针变量的地址
   2:      NSLog(@"%p", &p);
   3:      // 对象的地址
   4:      NSLog(@"%p", p);
   5:      // <类名:对象地址>
   6:      NSLog(@"%@", p);

   1:  Class c = [Person class];
   2:      
   3:      // 1.会调用类的+description方法
   4:      // 2.拿到+description方法的返回值(NSString *)显示到屏幕上
   5:      NSLog(@"%@", c);

类似于Java的toString()

2、description方法的一般用处注意点

   1:  // 默认情况下,利用NSLog和%@输出对象时,结果是:<类名:内存地址>
   2:      
   3:      // 1.会调用对象p的-description方法
   4:      // 2.拿到-description方法的返回值(NSString *)显示到屏幕上
   5:      // 3.-description方法默认返回的是“类名+内存地址”
   6:      NSLog(@"%@", p);
   7:      
   8:      //Person *p2 = [[Person alloc] init];
   9:      //NSLog(@"%@", p2);
  10:      
  11:      //NSString *name = @"Rose";
  12:      
  13:      //NSLog(@"我的名字是%@", name);
  14:      
  15:      Person *p2 = [[Person alloc] init];
  16:      p2.age = 25;
  17:      p2.name = @"Jake";
  18:      
  19:      NSLog(@"%@", p2);

3、description方法的的用法

   1:  // 决定了实例对象的输出结果
   2:  //- (NSString *)description
   3:  //{
   4:  //    // 下面代码会引发死循环
   5:  //    // NSLog(@"%@", self);
   6:  //    return [NSString stringWithFormat:@"age=%d, name=%@", _age, _name];
   7:  //    //return @"3424324";
   8:  //}
   9:   
  10:  // 决定了类对象的输出结果
  11:  + (NSString *)description
  12:  {
  13:      return @"Abc";
  14:  }

转载于:https://www.cnblogs.com/zeyang/p/4318925.html

语言基础之description方法相关推荐

  1. java语言基础-面向对象编程-方法(廖雪峰老师官网学习记录)

    Java是一种面向对象的编程语言. 面向对象编程,英文是Object-Oriented Programming,简称OOP. 面向对象编程,是一种通过对象的方式,把现实世界映射到计算机模型的一种编程方 ...

  2. Python import导入模块与函数方法 Python语言基础【1】

    1 Python的语言基础 导入模块 在Python代码中导入模块需要使用 import语句语法结果如下 import module_name 使用模块中函数的语法如下 module_name.fun ...

  3. IOS开发基础Object-C( 04)—构造方法和description方法

    在上一篇博客中,我们简单介绍了一下点语法和self,相信大家对点语法以及self有了一点的了解,点语法的本质就是调用get方法和set方法.那么今天我们再来介绍一下构造方法和description. ...

  4. Python|装饰器|执行时间|递归|动态属性|静态方法和类|继承和多态|isinstance类型判断|溢出|“魔法”方法|语言基础50课:学习记录(6)-函数的高级应用、面向对象编程、进阶及应用

    文章目录 系列目录 原项目地址: 第16课:函数的高级应用 装饰器(记录执行时间的例子) 递归调用 简单的总结 第17课:面向对象编程入门 类和对象 定义类 创建和使用对象 初始化方法 打印对象 面向 ...

  5. [Objective-c 基础 - 2.10] description方法

    A. 实例对象打印-description 1.当使用NSLog函数并且使用%@占位符的时候,会调用对象的-description方法 2.拿到-description的返回值,显示到console中 ...

  6. OC语言基础一:OC方法调用机制,new方法实现原理

    文章目录 OC方法调用机制 new方法实现原理 野指针 内存溢出 内存泄漏 alloc和init OC方法调用机制 OC有两种方法 Person *person=[Person new]; [pers ...

  7. id、构造方法、Category 分类、类的本质、description方法、SEL

    1.id: 万能指针id :id对象不能用点语法.id对象本身已经有 * 了 因此变量名不能有 * . 可以吧id理解为 NSObject * 类型数据! int main() { @autorele ...

  8. 随机函数c语言对打,20165323 学习基础和C语言基础调查

    20165323 学习基础和C语言基础调查 一.技能学习心得 1.你有什么技能比大多人更好? 我觉得我羽毛球打的还行,不能说打得比大多数人好,但是对于一些打羽毛球的要领还是掌握的. 2.针对这个技能的 ...

  9. 我的全栈之路-C语言基础之C语言概述与开发环境搭建

    我的全栈之路-C语言基础之C语言概述与开发环境搭建 我的全栈之路 1.1 信息技术发展趋势 1.2 浅谈计算机系统架构 1.2.1 计算机系统架构概述 1.2.2 计算机硬件系统 1.2.2 计算机软 ...

最新文章

  1. 高校网站群建设方案简介
  2. 【微信小程序企业级开发教程】前台收集数据更新数据库表方法
  3. STM32之ADC实例(基于DMA方式)
  4. 消防信号二总线有没电压_消防的电源总线和二总线的区别,二总线是不是信号..._消防考试_帮考网...
  5. 【ruoyi若依】echarts图表跑版
  6. python基础—循环基础知识点
  7. 动态加载子节点_省市区递归嵌套子流程动态选择实现
  8. GDB使用小结- 可带参数
  9. qt银行排队系统服务器代码,基于qt的银行排队系统
  10. java ee jsp程序_JavaEE程序设计及项目开发教程(JSP篇)
  11. .tar.bz2文件怎么解压
  12. 创业公司专题数据(包含stata多种模型代码)
  13. Visual Studio 2013各个版本下载地址
  14. 有感于《成都私车数量超上海》
  15. 低压差线性稳压电源(LDO)原理、参数及应用
  16. 用计算机弹发如雪,计算器弹音乐谱子
  17. p30升级鸿蒙能支持5G网络吗,华为p30支持5g吗
  18. vue 具名插槽用法
  19. 结构体 struct 的深入理解
  20. Python 并行编程教程 | Lynda教程 中文字幕

热门文章

  1. php里面12小时制和24小时制的选择方法
  2. 深度学习模型建立过程_所有深度学习都是统计模型的建立
  3. pytorch卷积可视化_使用Pytorch可视化卷积神经网络
  4. sublime同步配置和插件
  5. 访问 Neutron 外部网络 - 每天5分钟玩转 OpenStack(143)
  6. 很好的Android论坛
  7. spi flash驱动
  8. java spring redis_spring配置redis(xml+java方式)
  9. mysql 中文字段名_MySQL全文索引怎么做?| 教程分享
  10. python 多个列表合并_Python对两个有序列表进行合并和排序的例子