基本概念:在O-C中,创建完类之后还需要给一个类添加属性和方法,之前说过的set和get方法比较繁琐,因此引入了@property 这个编译器指令.@property 是一个编译器指令.所谓的编译器指令, 即告诉编译器如何处理内容, 要做什么.@property
告诉编译器声明读写器( getter 方法与 setter 方法)
1.在今天的 Xcode 中, @property 可以同时生成实例变量, 方法的声明以及方法的实现.
2, 重写 getter
方法与 setter
方法
虽然 @property 很方便, 但是自动生成的方法总会有不满足需求的一天. 因此, 可以重写getter 方法或 setter 方法, 已满足使用的需求.
这里的重写不是继承中重写父类方法, 而是自己实现需要的 setter 方法或 getter 方法, 从而不让系统自动生成, 而没有自己写的方法还是由编译器生成. 但是不能同时自己实现两个方法
一个例子,使用@property就可以替代被注释掉的部分:
#import <Foundation/Foundation.h>
@interface employee :
NSObject
//(1) 类中姓名、年龄和工资属性分别使用char数组,int变量以及double变量存储。
{
// NSString * _name;
//
// int _age;
//
// double _salary;
//
}
//使用便捷的@property,取代 set
和 get
@property NSString * name;
@property int * age;
@property double salary;
-(void)mythod;
////设计show方法。
//-(void)show;
////封装三个方法设置器
//-(void)setName:(NSString * )name;
//-(void)setAge:(int)age;
//-(void)setSalary:(double)salary;
////getter方法
//
//-(NSString *)name;
//-(int)age;
//-(double)salary;
@end
版权声明:本文为博主原创文章,未经博主允许不得转载。