博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
四:setter和getter方法
阅读量:5298 次
发布时间:2019-06-14

本文共 1383 字,大约阅读时间需要 4 分钟。

setter和getter方法整体声明和实现虽然后面可以用@property代替,但是在后面的iOS开发中,setter方法或getter方法单独使用的频率比较高,应用比较广泛!

@Interface Person:NSObject{  NSString *_name;  int _age;  Sex _sex;      //此处枚举类型,属于基本数据类型,不用加“*”  float _height;}@end

一、setter方法就是给属性赋值的方法

书写格式:

1、在类的声明中:- (void) +(set+属性去掉"_",首字母大写) : (数据类型/对象/类) + (属性去掉"_");

注意事项:

(1) setter方法一定是对象方法

(2) 一定没有返回值

(3) 一定以set开头, 并且set后面跟上需要设置的成员变量的名称去掉下划线, 并且首字母大写

(4) 一定有参数, 参数类型一定和需要设置的成员变量的类型一致, 并且参数名称就是成员变量的名称去掉下划线

举例:

- (void) setName: (NSString *)name;- (void)setAge: (int)age;- (void)setSex:(Sex)sex;- (void)setHeight: (float)height;

2、在类的实现中:大括号内可以添加其它内容,但是必须实现 属性 =(去掉"_"的属性)

- (void) setName: (NSString *)name{  _name = name;}- (void)setSex:(Sex)sex{  _sex = sex;}

 

二、getter方法就是获取成员变量值得方法

书写格式:

1、类的声明中 :- (数据类型/对象/类)+(属性去掉“_”)

注意事项:

(1) getter方法一定是对象方法

(2)一定有返回值, 而且返回值一定和获取的成员变量的类型一致

(3)方法名称就是获取的成员变量的名称去掉下划线

(4) 一定没有参数

举例:

- (NSString *)name;

- (int)age;

- (Sex)sex;

- (float)height;

2、类的实现中:在类的实现中可以添加其它内容,但是必须有 return + 属性

- (NSString *)name{  return _name;}- (Sex)sex{  return _sex;}

 

三、其它应用:

1、一个属性可以只有getter方法, 没有setter方法, 这种属性我们称之为只读属性

2、一个属性也可以只有setter方法, 没有getter方法, 这种属性我们称之为只写属性

3、如果既有setter方法又有getter方法, 那么这种属性我们称之为可读可写的属性

4、一个属性也可以没有getter和setter, 这种属性我们称之为私有属性

5、setter方法和getter方法的声明和实现可以直接用下面代替(写在类的声明里面)

@property(nonatomic,assin)NSString * name;

@property(nonatomic,assin)Sex sex;

转载于:https://www.cnblogs.com/hissia/p/5419793.html

你可能感兴趣的文章
线性表可用顺序表或链表存储的优缺点
查看>>
在现有的mysql主从基础上,搭建mycat实现数据的读写分离
查看>>
[Flex] flex手机项目如何限制横竖屏?只允许横屏?
查看>>
tensorflow的graph和session
查看>>
JavaScript动画打开半透明提示层
查看>>
Mybatis生成resulteMap时的注意事项
查看>>
jquery-jqzoom 插件 用例
查看>>
1007. Maximum Subsequence Sum (25)
查看>>
iframe的父子层跨域 用了百度的postMessage()方法
查看>>
图片生成缩略图
查看>>
动态规划 例子与复杂度
查看>>
查看oracle数据库的连接数以及用户
查看>>
【数据结构】栈结构操作示例
查看>>
中建项目环境迁移说明
查看>>
三.野指针和free
查看>>
activemq5.14+zookeeper3.4.9实现高可用
查看>>
TCP/IP详解学习笔记(3)IP协议ARP协议和RARP协议
查看>>
简单【用户输入验证】
查看>>
python tkinter GUI绘制,以及点击更新显示图片
查看>>
HDU4405--Aeroplane chess(概率dp)
查看>>