重写description方法

1年前 阅读 165 评论 0 赞 0

#####NO.20 重写description方法

  1. //创建一个测试类
  2. @interface Test : NSObject
  3. /**姓名*/
  4. @property (nonatomic , copy) NSString *name;
  5. //便利构造
  6. -(instancetype)initWithName:(NSString *)name;
  7. @end
  8. @implementation Test
  9. //便利构造
  10. -(instancetype)initWithName:(NSString *)name{
  11. if (self = [super init]) {
  12. self.name = name;
  13. }
  14. return self;
  15. }
  16. @end
  17. //演示:
  18. - (void)viewDidLoad {
  19. [super viewDidLoad];
  20. Test *test = [[Test alloc]initWithName:@"克里斯蒂亚诺-罗"];
  21. NSLog(@"打印结果:%@",test);
  22. //打印结果:<Test: 0x608000001f90>
  23. //我们解读这个打印:
  24. //上面的结果是<Test: 16进制的首地址>
  25. //那么上面是怎么来的,其实我们直接打印test和 [test description]方法的返回值
  26. //所以对于我们程序员来说,有时需要自己的自定义类能够详细显示一些信息,我们就可以重写这个方法
  27. //description:是所有继承自NSObject类都有的方法,所以我们在Test的实现中重写这个方法
  28. //重写description方法
  29. // -(NSString *)description{
  30. // return [NSString stringWithFormat:@"Test类-> name = %@",self.name];
  31. // }
  32. //重写后:打印结果:Test类-> name = 克里斯蒂亚诺-罗
  33. }
你的支持将鼓励作者继续创作

评论(0)

(无)