美文网首页
ios中set和get方法

ios中set和get方法

作者: Coder大雄 | 来源:发表于2016-08-31 21:14 被阅读5277次
    • 使用@property声明了成员变量,没有自己去写它的set方法和get方法,系统会自动给你生成。同时生成一个下划线成员变量
    @property (nonatomic, assign) NSInteger age;
    

    你调用的时候,赋值的值是多少就是多少

    Dog *aDog = [Dog new];
    aDog.age= 5;
    NSLog(@"%zd",aDog.age);//打印得5
    
    • 如果你自己写了set方法,却没有在里面做任何操作,会默认调用_age。所有的成员变量初始值都是0.所以即便你在调用set方法的时候赋值,打印出来也是0
    //Dog.m文件 实现部分。set方法不做操作
    -(void)setAge:(NSInteger)age {
        
    }
    
    Dog *aDog = [Dog new];
    aDog.age= 5;
    NSLog(@"%zd",aDog.age);//打印得0
    
    • 如果你自己写了get方法,在里面return 10。你在调用get方法的时候赋值,打印出来也是就是你get方法里面返回的值10
    //Dog.m文件 实现部分。get方法 return 10
    - (NSInteger)age {
        return 10;
    }
    
    Dog *aDog = [Dog new];
    aDog.age= 5;
    NSLog(@"%zd",aDog.age);//打印得10
    
    • 如果你自己同时生成了set和get方法,那系统就不会生成下划线成员变量

    相关文章

      网友评论

          本文标题:ios中set和get方法

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