O-C相关-07-@property关键字简介与使用

本文介绍Objective-C中@property指令的应用,包括自动生成实例变量、方法声明及实现,并讲解如何重写getter与setter方法以满足特定需求。


 

基本概念:在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


 

版权声明:本文为博主原创文章,未经博主允许不得转载。

转载于:https://www.cnblogs.com/wahy/p/4817238.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值