014.@property 合成存取方法
2015-07-22 11:54
169 查看
---------------
main.m
---------------
#import
<Foundation/Foundation.h>
@interface
FKUser :
NSObject
@property
(nonatomic)
NSString* name;
@property
NSString* pass;
@property
NSDate* birth;
@end
@implementation
FKUser
@synthesize
name =
_name;
// = _name可以省略,乃至这整句代码都可以省略
//
因为这些代码,Xcode已经自动帮你写好了
@synthesize
pass;
//
可以省略
@synthesize
birth;
//
可以省略
- (void) setName:(NSString*)
name //
这个方法实现即使不写,Xcode也会帮你写
{
self->_name
= [NSString
stringWithFormat:@"+++%@", name];
NSLog(@"%@"
,
self->pass);
}
@end
int
main()
{
FKUser* user = [[FKUser
alloc]
init];
[user
setName:@"admin"];
//
调用set方法修改成员变量的值
[user
setPass:@"1234"];
[user
setBirth:[NSDate
date]];
NSLog(@"管理员账号为:%@,密码为:%@,生日为:%@"
, [user
name] , [user
pass] , [user
birth]);
}
一、编写本节代码的具体步骤:
1.可仿照第二章001节的代码编写步骤,可以把类的接口文件,类的实现文件写在main.m文件中。
二、本节代码涉及到的知识点:
1.要想修改或者获取成员变量的值,我们通常需要为每一个成员变量编写set、get方法。
2.当成员变量很多的时候,编写set、get方法将成为一件特别枯燥、繁琐的事情。
3.于是OC为我们提供了一个关键字@property,它可以自动生成set、get方法。
4.@property原本要与@synthesize配对使用,xcode4.5之后,@synthesize可以省略。
5.当我们使用了@property之后,不仅会自动生成set、get方法,还会自动在@implementation中,
增加一个成员变量,该成员变量的变量名为get方法名加下划线前缀。
main.m
---------------
#import
<Foundation/Foundation.h>
@interface
FKUser :
NSObject
@property
(nonatomic)
NSString* name;
@property
NSString* pass;
@property
NSDate* birth;
@end
@implementation
FKUser
@synthesize
name =
_name;
// = _name可以省略,乃至这整句代码都可以省略
//
因为这些代码,Xcode已经自动帮你写好了
@synthesize
pass;
//
可以省略
@synthesize
birth;
//
可以省略
- (void) setName:(NSString*)
name //
这个方法实现即使不写,Xcode也会帮你写
{
self->_name
= [NSString
stringWithFormat:@"+++%@", name];
NSLog(@"%@"
,
self->pass);
}
@end
int
main()
{
FKUser* user = [[FKUser
alloc]
init];
[user
setName:@"admin"];
//
调用set方法修改成员变量的值
[user
setPass:@"1234"];
[user
setBirth:[NSDate
date]];
NSLog(@"管理员账号为:%@,密码为:%@,生日为:%@"
, [user
name] , [user
pass] , [user
birth]);
}
一、编写本节代码的具体步骤:
1.可仿照第二章001节的代码编写步骤,可以把类的接口文件,类的实现文件写在main.m文件中。
二、本节代码涉及到的知识点:
1.要想修改或者获取成员变量的值,我们通常需要为每一个成员变量编写set、get方法。
2.当成员变量很多的时候,编写set、get方法将成为一件特别枯燥、繁琐的事情。
3.于是OC为我们提供了一个关键字@property,它可以自动生成set、get方法。
4.@property原本要与@synthesize配对使用,xcode4.5之后,@synthesize可以省略。
5.当我们使用了@property之后,不仅会自动生成set、get方法,还会自动在@implementation中,
增加一个成员变量,该成员变量的变量名为get方法名加下划线前缀。
相关文章推荐
- OpenGL 纹理本质
- 内存管理相关函数 -- Linux
- 探索女性角色扮演游戏Top Girl成功的秘诀
- OpenGL中的多重采样
- shell自动打包ipa
- Linux下如何查看系统启动时间和运行时间
- 安装和使用flume1.5传输数据(日志)到hadoop2.2
- C#判断网站是否能访问或者断链的方法
- Hadoop例子中WordCount参数分析
- opencv3.0+VS2013平台人脸检测MFC
- linux常用命令:mkdir,more,less,
- openwrt编译出错处理记录
- Operation category READ is not supported in state standby
- 协同推荐Slope One算法
- 一个tomcat下部署多个项目方法
- shell export 作用
- top命令
- centos下vsftpd配置root登陆
- 简单的Apache+FastCGI+Django配置指南
- ecshop修饰符preg_replace/e不安全的几处改动