Objective-C中的@property使用[五]
简介
Objective-C语言关键词,与@synthesize配对使用。
功能:让编译器自动编写一个与数据成员同名的方法声明来省去读写方法的声明。
如:
1、在头文件中:
- @property int variable;
等效于在头文件中声明2个方法:
- - (int)variable;
- -(void)setVariablet:(int)newVariable;
2、实现文件(.m)中
- @synthesize variable;
等效于在实现文件(.m)中实现2个方法。
- - (int)Variable
- {
- return variable;
- }
- -(void)setVariable:(int)newVariable
- {
- variable = newVariable;
- }
以上等效的函数部分由编译器自动帮开发者填充完成,简化了编码输入工作量。
编辑本段
格式
声明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
禁止多线程,变量保护,提高性能
Objective-C中的@property使用[五]相关推荐
- 从菜鸟到老鸟--Mac篇 [五]
(接上篇) 窗口布局 Mac的窗口比起Windows的窗口来说有相似,但是更多的是不同,为了让大家更好的了解窗口布局,我通过图2-2来介绍. 图2-2 多彩多姿的视窗 Mac提供四种方面的视窗模式,打 ...
- 属性项目的定义(property)[ZT]
原文地址:属性项目的定义(property) @property (copy, nonatomic) NSString *title; 什么是assign,copy,retain之间的区别? assi ...
- 向NS2中添加协议PING[转载]
原文地址:http://www.cnblogs.com/xyl-share-happy/archive/2012/03/20/2407732.html ------------------------ ...
- 一张图看懂阿里云网络产品[七]共享流量包
共享流量包是BGP公网流量的预付费套餐,价格比后付费流量更低,并支持闲时峰谷流量包,能大大降低用户的BGP公网流量成本,是企业必备的省钱利器.本图将为各位全面讲解共享流量包产品. 系列文章持续更新中, ...
- 中职计算机应用基础每章知识点,[定稿]中职计算机应用基础教案_1-5章V3.1
<[定稿]中职计算机应用基础教案_1-5章.doc>由会员分享,可免费在线阅读全文,更多与<[定稿]中职计算机应用基础教案_1-5章(V3.1)>相关文档资源请在帮帮文库(ww ...
- 《算法竞赛中的初等数论》(五)正文 0x50筛法(ACM / OI / MO)(十五万字符数论书)
整理的算法模板合集: ACM模板 点我看算法全家桶系列!!! 实际上是一个全新的精炼模板整合计划 写在最前面:本文部分内容来自网上各大博客或是各类图书,由我个人整理,增加些许见解,仅做学习交流使用,无 ...
- 通过Spring配置文件中bean中的property赋值
基本数据类型赋值-通过spring配置文件中bean中的property 扩展-以此方式可以通过配置为连接数据的属性赋值 1.如果是基本数据类型,可以通过setter方法为对象中的属性设置初始值,应用 ...
- 第7.26节 Python中的@property装饰器定义属性访问方法getter、setter、deleter 详解
第7.26节 Python中的@property装饰器定义属性访问方法getter.setter.deleter 详解 一. 引言 Python中的装饰器在前面接触过,老猿还没有深入展开介绍装饰 ...
- 在shell中变量的赋值有五种方法
在shell中变量的赋值有五种 :使用 read 命令,直接赋值,使用命令行参数,使用命令行的输出结果,从文件读取 1. 直接赋值,格式为:变量名 = 变量值 2.Read 命令是系统内置命令,语法格 ...
最新文章
- 5道面试题,拿捏String底层原理
- php -- 读取大文件
- Xamarin Essentials教程使用加速度传感器Accelerometer
- (前)首富许家印造车果然有一套:车还没量产上市,公司先冲刺科创板募资
- 美团高德并不是解决快车问题的灵药,烧完钱之后只会产生新的滴滴
- python(matplotlib3)——ticks(坐标刻度)能见度
- Linux ping不通百度的解决方法
- Jmeter_简单的关联设置
- layui js添加html,layui.js如何声明全局变量?
- 带wiringPi库的交叉编译
- [转载] Java | Java 面向对象知识小抄
- ekf pose使用方法 ros_【百川小课堂】第13课—ROS学习(二)
- 睡眠分期--深度学习算法
- 浅谈歌词文件(LRC、QRC、KRC)
- Dubbo-接口数据序列化Serialization
- 通过google的gson把xml转成json
- 小米 admob广告 ID_如何评价即将发布的小米盒子4?
- 川土微电子|全系列集成隔离电源的隔离器芯片
- selenium入门教程
- 1000个苹果要分到10个箱子中去 两种分析方式