传统的get和set方法
Person *p = [Person new];
//调用set方法
[p setAge:17];
[p setName"曾小贤"];
//调用get方法
int a = [p age]; //调用get方法
NSString *n = [p name];
NSLog(@"\nage:%d,name:%@",a,n);
使用点语法:
点语法 ; xcode的特性,xcode帮我们做代码替换
p.age = 17; //p.age = 17 --替换-->[p setAge:17]
p.name = @"曾小贤";//p.name=@"曾小贤"---替换--> [p setName"曾小贤"];
int a = [p age]; //调用get方法
NSString *s = [p name];
注意,此处p.age是出现在了等号的右侧
实际上,当xcode 看到p.age出现在等号的右侧后,
它会帮我们把p.age ---替换成---> [p age];
int a = p.age; //调用get方法
强调:p.age到底是替换成get方法还是set方法,一般取决于
p.age出现在等号左侧还是右侧(是设置值,还是取值)
<img id="aimg_rNoX4" class="zoom" file="http://bbs.itheima.com/data/attachment/forum/201508/16/171430ddjvflvwzf3jj3le.png.thumb.jpg" lazyloadthumb="1" border="0" alt="" />
<img id="aimg_lf6G7" class="zoom" file="http://bbs.itheima.com/data/attachment/forum/201508/16/171431gtrn1opblpfp4f4x.png.thumb.jpg" lazyloadthumb="1" border="0" alt="" />
Person 类
#import <Foundation/Foundation.h>
@interface Person : NSObject
{
//实例变量
NSString *_name;
int _age;
}
//set方法
-(void)setAgeint)age;
-(void)setNameNSString *)name;
//get方法
-(int)age;
-(NSString*)name;
@end
—————————————————————————————————————— |