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

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

© 2899028818 中级黑马   /  2015-7-18 10:07  /  809 人查看  /  2 人回复  /   0 人收藏 转载请遵从CC协议 禁止商业使用本文

@property的语法!变量的声明语法为:

@property(attribution)Vartype  Varname;//属性在()里来定义,然后是变量类型、变量名。

OC提供的属性有:
读写属性: (readwrite/readonly)以及(getter=name)、(setter=name)

setter语意:(assign/retain/copy)

原子性: (non)atomic

      提醒一下,采用@property与自定义setter和getter方式其实是等价的,但是编译器会优先查找自动的setter/getter方法,如果找不到,就会使用@property对应的属性。例如:

        @propert(nonatomic ,copy)NSString *name;

        这条语句等价于:

       完成setter方法为:
        -(void)setName:(NSString*)newName{

              if(newName!=name){

                     [name release];

                     name=[newName  copy];
             }
        }

       完成getter方法为:

       -(NSString*)name{

               return name;
        }

2 个回复

倒序浏览
哎呦,咱俩写得莫名的想象啊,哈哈
回复 使用道具 举报
还没有学到oc!!!!
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马