黑马程序员技术交流社区

标题: @property [打印本页]

作者: 2899028818    时间: 2015-7-18 10:07
标题: @property
@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;
        }
作者: 狂甩你十八条街    时间: 2015-7-18 11:10
哎呦,咱俩写得莫名的想象啊,哈哈
作者: 小蜗牛0519    时间: 2015-7-18 20:03
还没有学到oc!!!!




欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/) 黑马程序员IT技术论坛 X3.2