黑马程序员--property参数

------Java培训、Android培训、iOS培训、.Net培训、期待与您交流! -------

1,set方法内存管理相关的参数

*retain:release旧值,retain新值(适用于OC对象类型)

*assign:直接赋值(默认,只用于非OC对象类型)

*copy: release旧值,copy新值

2,是否要产生set方法;

*readwrite:同时产生setter和getter的声明,实现(默认)

*readonly : 只会生产getter的声明,实现

@property (readonly) int height;

3,多线程管理:

*nonatomic: 性能高(一般用这个)

*atomic : 性能低(默认)

4,setter和getter方法的名称

*setter:决定了set方法的名称,一定要有个冒号

*getter: 决定了get方法的名称(一般用在bool类型的get方法)

@property (getter= isRich) BOOL rich;//返回BOOL类型的方法名一般以is开头

1,oc对象类型:

@property (nonatmotic, retain) 类名  * 属性名;

@property (nonatmotic, retain)  Car * car;

@property (nonatmotic, retain)  id car;

被retain过的属性,必须在dealloc方法中release

-(void) dealloc

{

[_car release];

[super dealloc];

}

2,非OC对象类型(int\float\enum\struct)

@property (nonatmotic, assign)  类型名称 属性名;

@property (nonatmotic, assign)  int age;

时间: 2024-10-11 06:48:34

黑马程序员--property参数的相关文章

黑马程序员——@property及其参数的详解

------Java培训.Android培训.iOS培训..Net培训.期待与您交流! ------ @property详解 1.什么是@property? @property是OC特有的一个关键字,它属于编译器一个特性,编译器碰到@property时,会自动展开为成员变量的set和get方法 在Xcode4.5之前,Xcode编译器碰到@property会将其转换为成员变量set.get方法的声明,碰到@synthesize会展开为成员变量set.get方法的实现,所以XCode4.5之前,@

黑马程序员[email protected]和@synsthesize的使用

一.@property和@synthesize的基本使用 @property :可以自动生成某个成员变量的setter和getter的声明(@property int age;).写在@interface里面: @synthesize :自动生成age的setter和getter,并且在方法内部访问的是_age这个成员变量(@synthesize age = _age; // 如果后面不写=_age默认就是访问age成员变量).写在@implementation里面: 二.@property和@

黑马程序员-OC内存管理 @property的增强

涉及到内存管理,只读,多线程等很多功能时,setter和getter方法也就没那么简单了:当然@property依然强大,很好用: 1:内存管理相关参数: *:retain:  (如果是oc对象类型),生成的setter会自动release旧值,retain新值: *:assign:(适用于非oc对象)  这个是默认的值 *:copy:release旧值,copy新值: @property (retain) NSString *name; // 同类型的参数不能同时写 // @property

黑马程序员_OC学习笔记之@property和@synthesize

[objc] view plaincopyprint? <span style="font-size:24px;">#import <Foundation/Foundation.h> @interface Person : NSObject { int _age; int age; int _height; int height; int _weight; int weight; int _money; int money; } @property int ag

黑马程序员_浅谈out参数、ref参数和可变参数

1.out参数 out关键字会导致参数通过引用来传递,通俗点说,就是往外传值的. out参数的作用:用于以内部变量为外部变量赋值的,out一般适用于某个方法不只是使用return返回单个值,而是需要有多个返回值的情况. out参数的使用需要注意以下几点:  1)out参数传递的变量在传递之前不需要对其进行初始化. 分析:在调用方法之前,对out参数传递的变量只需声明,可以赋值也可以不赋值,不过反正都是要在调用时被覆盖掉,所以大可不必赋值,因为赋值了虽然不会报错,但却根本也没有用处,没必要多此一举

黑马程序员_Objective C中的@property 与 @synthesize 快速生成setter getter方法

<a href="http://www.itheima.com"target="blank">ASP.Net+Unity开发</a>.<a href="http://www.itheima.com"target="blank">.Net培训</a>.期待与您交流! 一般来说在一个类中 成员变量是会有setter 跟getter方法的. 如果每一个成员变量的setter 跟gett

黑马程序员——19,Collections工具类,Arrays工具类,高级for循环,可变参数,静态导入

------<ahref="http://www.itheima.com" target="blank">Java培训.Android培训.iOS培训..Net培训</a>.期待与您交流! ------- 黑马程序员--19,Collections工具类,Arrays工具类 /* Collections是一个类,注意,这里后面带有一个s 千万不要和Collection弄混了!Collection只是接口而已. 两者要区别开来. Collect

【黑马程序员】————简单的OC程序

一.  OC简介 C语言的基础上,增加了一层最小的面向对象语法 完全兼容C语言 可以在OC代码中混入C语言代码,甚至是C++代码 可以使用OC开发Mac OS X平台和iOS平台的应用程序 二.  OC语法预览 1.      关键字 基本上所有关键字都是以@开头 下面列举一些常见的关键字,看一眼就行了,不用去翻资料查找它们的含义 @interface.@implementation.@end @public.@protected.@private.@selector @try.@catch.@

黑马程序员-OC学习笔记之ARC

---------------------- IOS开发.Android培训.期待与您交流! ----------------------一.什么是ARC        ARC是自动引用计数,苹果官方在Xcode4.2及以后版本中加入的一个内存管理机制,完全取代了程序员人工的内存管理,使得程序员只须关心程序本身.使用ARC,编译器会自动在代码中加入内存管理代码,是一个编译器特性,而不是运行时特性,当然,它也和JAVA的垃圾回收不同,它的本质和手动的内存管理是一样的,只是这些代码编译器会自动添加.

黑马程序员——Java基础---IO(下)

黑马程序员——Java基础---IO(下) ------<a href="http://www.itheima.com" target="blank">Java培训.Android培训.iOS培训..Net培训</a>.期待与您交流! ------ 一.概述 Java除了基本的字节流.字符流之外,还提供了File类.properties类.打印流.序列流等和输入输出相关的类,它们能够帮助我们更好的处理信息.下面将对它们进行简单的介绍. 一.正