重写NSString的setter方法


- (void)setName:(NSString *)name { _name = [name copy]; } 就可以了
不需要写成:

第一种:

(void)setName:(NSString *)name {
   if (_name != name) {
      _name = nil;
      _name = [name copy];
   }
}
第二种:

(void)setName:(NSString *)name {
   if (_name != name) {
      _name = nil;
      _name = name;
   }
}

 

2017某一次去浦东XXX面试 被问到如何重写NSString

当时支支吾吾说了什么copyithZone...

结果面试官态度坚决 说:我看没有必要再谈下去了 今天就这样吧 。

-------------------------------

 

当然如果:

NSString NSArray UIView 这些类 里面 加入 一些比较常用的 功能 比如 判断时候为空  是否有空格 去空格 是否有折行符 去折行符...等等。可以在分类中实现。因为这几个类太基础了 内部封装调用太多 Category 可以在保持引擎本身逻辑完整性的基础上 实现自我的需求增加 比较适合。

 

posted @ 2018-06-21 13:57  liuw_flexi  阅读(624)  评论(0编辑  收藏  举报