A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

© wangchao1992 中级黑马   /  2015-8-16 17:01  /  728 人查看  /  4 人回复  /   0 人收藏 转载请遵从CC协议 禁止商业使用本文

本帖最后由 wangchao1992 于 2015-8-16 17:14 编辑

传统的get和set方法
          Person *p = [Person new];
           //调用set方法
          [p setAge:17];
         [p setName:@"曾小贤"];
         //调用get方法
          int a = [p age];  //调用get方法
          NSString *n = [p name];
          NSLog(@"\nage:%d,name:%@",a,n);
使用点语法:
           点语法 ;   xcode的特性,xcode帮我们做代码替换
           p.age = 17;      //p.age = 17 --替换-->[p setAge:17]
           p.name = @"曾小贤";//p.name=@"曾小贤"---替换--> [p setName:@"曾小贤"];

          int a = [p age];  //调用get方法
          NSString *s = [p name];        
           注意,此处p.age是出现在了等号的右侧

           实际上,当xcode 看到p.age出现在等号的右侧后,
           它会帮我们把p.age ---替换成---> [p age];
           int a = p.age;  //调用get方法   

          强调:p.age到底是替换成get方法还是set方法,一般取决于
          p.age出现在等号左侧还是右侧(是设置值,还是取值)



Person 类
#import <Foundation/Foundation.h>
@interface Person : NSObject
{
    //实例变量
    NSString *_name;
    int _age;
}

//set方法
-(void)setAge:(int)age;
-(void)setName:(NSString *)name;

//get方法
-(int)age;
-(NSString*)name;
@end



4 个回复

倒序浏览
学习了,不错
回复 使用道具 举报
总结的好,加油!!!
回复 使用道具 举报
fersh 来自手机 中级黑马 2015-8-16 21:54:12
板凳
不错呦,总结的还可以
回复 使用道具 举报
fersh 来自手机 中级黑马 2015-8-16 21:56:30
报纸
真的不错
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马