// main.m
/*
29点语法的使用
1.直接用对象的指针名.(去掉get或set的)方法名.
2.前题:成员变量的get方法,不再需要get,但set方法保持不变.
本质:
点语法本质还是方法调用.去调用的类中定义的set get方法(get方法不需要前面加get);
点语法Xcode编译器的一个功能.本质上还是去调用方法.
提供一种更方便的方式去操作属性.
两个要注意的问题:
1.不能在set或get方法里用点语法调用自已.否则会出现死循环.
2.点语法可以调用普通方法,只要符合规则.但是不要这么做.
*/
#import <Foundation/Foundation.h>
#import "Person.h"
int main(int argc, const char * argv[]) {
Person *per=[Person new];
//访问成员变量(属性)
//用原始方式:
// [per setName:@"李四"];
// NSString *name=[per name];
// NSLog(@"%@",name);
per.name=@"王五";// 等效于:[per setName:@"王五"];
NSString *name=per.name;//等效于:[per name];
NSLog(@"%@",name);
per.age=20;
int age=per.age;
NSLog(@"%d",age);
per.high=1.75;
double high=per.high;
NSLog(@"%f",high);
per.weight=1.2; //会去找这个名字的方法:setWeight
double weight=per.weight;// 会去找这个名字的方法:weight;
NSLog(@"%f",weight);
NSLog(@"%d",per.add);
return 0;
}
|
|