那他们有什么优缺点呢?
成员变量:
1)访问效率快
2)当做标志
{
NSInteger _flag;
}
if (_flag == 0) {
NSLog(@"%@", self.name);
_flag = 1;
}
属性:
1)自动生成set和get方法
创建一个Person类,可以在Person类中使用set进行过滤
@property (nonatomic, assign) NSInteger age;
//使用set方法进行过滤 ,即使在别处调用,age = -1的话,也会被过滤
-(void)setAge:(NSInteger)age
{
if (age <= 0 && age >= 200) {
age = 0;
}
_age = age;
}
2)set发送通知
@property (nonatomic, copy) NSString *cityID;
-(void)setCityID:(NSString *)cityID
{
if (_cityID != cityID) {
//发送通知
}
_cityID = cityID;
}
3)get方法的好处
第一,就是懒加载
懒加载的优点
1. 防止对象被提前创建,不占用内存
2. 防止对象重复创建
3. 防止对象使用时,还没被创建
4. 可以在懒加载方法里面,进行初始化操作(view里圆角啊声明的),降低代码的耦合性
网友评论