美文网首页
@synthesize和@property关键字

@synthesize和@property关键字

作者: BigBossZhu | 来源:发表于2016-12-28 11:40 被阅读42次

同时重写settter和getter方法,不用运行时怎么实现?

@interface ViewController ()
{
    NSInteger _age;
}
@property (nonatomic, strong) NSString *name;
//这样就会生成setter和getter
@property (nonatomic, assign) NSInteger age;
@end

@implementation ViewController
//关联属性,生成方法
@synthesize age = _age;

- (NSInteger)age {
    return _age;
}
- (void)setAge:(NSInteger)age {
    _age = age;
}
#pragma mark - setter && getter

//不能setter和getter方法都重写
//- (void)setName:(NSString *)name {
//    _name = name;
//}
//- (NSString *)name {
//    return name;
//}

理解@property会自动生成setter和setter方法,当只使用这个属性时不同同时重写setter和getter方法,上面的@synthesize关键字完美解决了这个问题.将_age和age关联起来,和属性的使用效果相同.

相关文章

网友评论

      本文标题:@synthesize和@property关键字

      本文链接:https://www.haomeiwen.com/subject/axdyvttx.html