oc声明属性时的写法
2015-11-24 10:44
260 查看
oc声明属性时的写法
方式一:直接在@interface中的大括号中声明。 @interface MyTest : NSObject{ NSString *mystr; } 方式二:在@interface中声明,然后再在@property中声明。 @interface MyTest : NSObject{ NSString *_mystr; } @property (strong, nonatomic) NSString *mystr; 随后在.m文件中加入 @synthesize mystr = _myStr; 方式三:直接用@property声明 @interface MyTest : NSObject{ } @property (strong, nonatomic) NSString *mystr; 随后在.m文件中加入@synthesize mystr = _myStr;
使用方式一声明的成员变量是只能在自己类内部使用的,而不能在类的外部使用,(就是通过 类名. 点的方式是显示不出来的),方式三则相反,它可以在类的外部访问,在类的内部可以通过下划线+变量名或者self.变量名的方式来访问。
方式二的写法是一种过时的声明变量的方式,xcode在早期@systhesize没有自动合成属性器之前,需要手写
getter与setter方法,下划线从风格上表明这是类的内部变量,要是需要直接使用变量则需要使用get或者set的方式。
在 XCode目前有了自动合成属性器后,编译器会自动帮我们生成一个以下划线开头的的实例变量,所以我们不必去同时声明属性与变量。 我们可以直接用@property的方式来声明一个成员属性,在.m文件中使不使用@systhesize都无所谓,xcode会自动帮你生成 getter与setter.
相关文章推荐
- redis下载地址
- poj3177--Redundant Paths(边的双连通)
- English--Computer System
- [转载]陕西安康宁陕县特产(一)
- 手风琴效果(超简单实用)
- Android的四种启动模式(launchModel)
- Nimble packages
- Deep Learning Strong Parts for Pedestrian Detection
- 轻松记住大端模式和小端模式
- 新闻客户端首页图片无限循环滚动展示(可点击触发不同事件)初步封装IOS
- 为什么要设置环境变量以及JDK和JRE的区别
- Android开源库
- 三层架构初接触
- 每天时间安排
- [Java配置]OS X 更改当前使用的Java的版本
- Eclipse从SVN恢复本地<误删除已删除>的文件和代码
- java工具下载地址
- oracle的乐观锁和悲观锁
- 1.QSound之play和stop的使用
- 在cocoa China看到的一篇app发布的流程文章,留下来用