ios setter getter
来源:互联网 发布:淘宝开店类目怎么写 编辑:程序博客网 时间:2024/06/05 18:09
我们知道 如果
@property (retain,nonatomic) NSArray *myArray;
它已经为我们添加了
setMyArray 和getMyArray
我们不必再写这些函数,这样为我们提供了很大的方便,比如说,我们要用很多属性,我们不可能写很多
setter 和getter吧?比如说1000个,这样很不现实。
但是我们也可以使用自己的setter 和getter,怎么说呢?
默认情况下,我们 aa.bb=cc 调用的是 aa的 -setBb:
有时候我们想在setBb中处理一些事情,我们可能需要有自己的setBb
@interface MyViewController : UIViewController
{
NSArray *_arrayTest;
NSArray *myArray;
}
@property (retain,nonatomic,setter = setMyNewArray:) NSArray *arrayTest;
@property (retain,nonatomic) NSArray *myArray;
-(void) setMyNewArray:(NSArray *)ary;
@end
@implementation MyViewController
@synthesize arrayTest=_arrayTest;
@synthesize myArray;
-(void)setArrayTest:(NSArray *)arrayTest
{
//如果我们写了setArrayTest,setter就会调用我们写的setArrayTest,
如果你把下面的注释掉,你试一试 xx.arrayTest=xxx ,你会发现retainCount和没注释前是有变化的
//NSLog(@"set array");
/*
if (![_arrayTest isEqualToArray:arrayTest]) {
[_arrayTest release];
[arrayTest retain];
_arrayTest =arrayTest;
}
*/
}
-(void) setMyNewArray:(NSArray *)ary
{
NSLog(@" set new array");
//处理一些事情
if (![_arrayTest isEqualToArray:ary])
{
[_arrayTest release];
[ary retain];
_arrayTest =ary;
}
}
@end
- ios setter getter
- iOS setter & getter
- IOS-getter和setter方法
- iOS setter与getter方法
- iOS 中 setter and getter
- iOS setter 与 getter方法
- iOS setter和getter方法
- [iOS] getter and setter, @property and @synthesize
- IOS--OC--Lesson 封装 setter getter
- ios中setter和getter的写法
- iOS开发之getter与setter方法
- ios 同时重写setter和getter方法
- getter/setter
- setter,getter
- getter、setter
- getter ,setter
- iOS self.+变量 (setter &getter) 定义 自我总结
- iOS开发--线程同步的getter与setter方法
- CF 274D Lovely Matrix(拓扑排序)
- Time schedule和scheduleAtFixedRate区别
- Normal Form 范式 数据库设计原理
- 闲来无事,复习复习以前的东西---hibernate中的关联映射图解----一对一
- 分享一些与算法相关的网站
- ios setter getter
- 我的博客转到CSDN了
- 划分树
- VS2010 CString转为char的方法
- ubuntu11.04软件源更新
- c#中和并个excel表格的方法
- POJ 1325 Machine Schedule (最大二分匹配)
- AndroidManifest.xml文件详解(service)
- ByteBuffer的allocate和allocateDirect