Objective-C中的@property使用[五]

简介 
  Objective-C语言关键词,与@synthesize配对使用。 
  功能:让编译器自动编写一个与数据成员同名的方法声明来省去读写方法的声明。 
  如: 
  1、在头文件中: 

Ios代码  收藏代码
  1. @property int variable;  


  等效于在头文件中声明2个方法: 

Ios代码  收藏代码
  1. - (int)variable;  
  2. -(void)setVariablet:(int)newVariable;  


  2、实现文件(.m)中 

Ios代码  收藏代码
  1. @synthesize variable;  


  等效于在实现文件(.m)中实现2个方法。 

Ios代码  收藏代码
  1. - (int)Variable  
  2. {  
  3. return variable;  
  4. }  
  5. -(void)setVariable:(int)newVariable  
  6. {  
  7. variable = newVariable;  
  8. }  


  以上等效的函数部分由编译器自动帮开发者填充完成,简化了编码输入工作量。 
编辑本段 
格式 

  声明property的语法为: 
  @property (参数1,参数2) 类型 名字; 
  如: 
  @property(nonatomic,retain) Variable *variable; 
  其中参数主要分为三类: 
  读写属性: (readwrite/readonly) 
  setter语意:(assign/retain/copy) 
  原子性: (atomicity/nonatomic) 
  各参数意义如下: 
  readwrite 
  产生setter\getter方法 
  readonly 
  只产生简单的getter,没有setter。 
  assign 
  默认类型,setter方法直接赋值,而不进行retain操作 
  retain 
  setter方法对参数进行release旧值,再retain新值。 
  copy 
  setter方法进行Copy操作,与retain一样 
  nonatomic 
  禁止多线程,变量保护,提高性能

posted @ 2012-04-12 22:07  生活不是用来挥霍的  阅读(336)  评论(0编辑  收藏  举报