iOS 自定义Set方法,注意点
来源:互联网 发布:mac如何删除文件夹 编辑:程序博客网 时间:2024/05/21 22:40
之前一直以为set方法就是为了,让外部调用提供外部接口用的,不过在最近沃尔玛项目中,我发现我错了,我错得特别离谱,以至于不仔细看我都被蒙过去了。
首先我们明确一点set方法,如果我们不自定义set方法,那么我们属性会自动实现set和get方法而且注意而且会生成实例变量
like:@property(nonatomic,weak) Nsstring *name;
那么系统会自动生成_name的实例变量。
那如果我们自定义是实现了set方法的话,你就别想用_name了,你不许手动在扩展里面添加一个_name的实例变量,否则就休想使用,注意不会自动生成了!
所以 我当初遇到这样一段代码
在一个
- (void)setItemsList方法里面
得到:
self.brandList = brands;
而且我自定义类里面有自定义实现set方法
- (void)setBrandList:(NSArray *)brandList
通过断点跟踪,发现当代码运行到self.brandList = brands时候
会自动跳入- (void)setBrandList:(NSArray *)brandList方法
而- (void)setBrandList:(NSArray *)brandList这个方法里面有一个
_brandList = brandList;
注意这个_brandlist就是作者自定义的一个实例变量。不是系统自己生成的。所以依次来说总结两点:
1.自定义set方法之后,没有办法使用到实例变量,只能手动添加
2.在我们这个自定义类里面同样可以用set方法来对属性进行逻辑处理,而且可以不给外面使用,单单set方法就给自定义里面使用。(我这个重写set的属性就是没有给外部使用)
- iOS 自定义Set方法,注意点
- ios-自定义tableViewcell以及注意点
- iOS set/get 方法使用注意
- 自定义视图注意点
- 自定义View注意点
- IOS开发注意点
- ios-NSURLSession注意点
- ios开发中类方法以及self的注意点
- ios开发中类方法以及self的注意点
- 个人iOS项目常用效果方法注意点集锦
- IOS自定义控件注意
- Xib自定义cell注意点
- 自定义控件使用注意点
- javascript(注意点) map 、 set 、iterable
- 自定义View和自定义属性 注意点
- Oracle EBS R12 - 把自定义concurrent加入Pick Release Document Set(All Pick Release Documents)的几个注意点
- iOS PSTCollectionView使用注意点
- IOS开发中注意点
- 【jvm学习】jvm运行时内存分配模型分析
- android中获取图片的缩略图(解决OutOfMemoryError)内存溢出的Bug
- ActiveMQ内存设置和流控
- SQL优化_高水位线导致的性能问题
- 敏捷开发之Scrum扫盲篇
- iOS 自定义Set方法,注意点
- 31、df 命令
- getResources()方法读取jar包内部的文件
- windows平台下载webrtc代码和生成vs2013工程(非ninja)
- 提高 Vim 和 Shell 效率的 9 个建议
- cocos2dx解压缩文件
- [Leetcode]Number of Island
- 开始啃 Erlang 程序设计,第一口
- jdk的环境配置方法