欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

getter-setter方法 和 自定义代码块

程序员文章站 2022-05-08 16:37:38
...

在类中需要定义些方法来来操作成员变量

getter-setter方法

就不用去想方法的名称了,并且,getter和setter的格式和写法都是固定的,而且还是程序员之间的一种规范,降低了程序员沟通成本

setter方法

  • 作用:设置成员变量的值
  • 写法:
    1. setter方法一定是对象方法
    2. 一定以set开头,并且set后面跟上需要设置的成员变量的名称去掉下划线,并且首字母大写
    3. 一定没有返回值
    4. 一定有参数,参数类型一定和需要设置的成员变量的类型一致,并且参数的名称就是成员变量名称去掉下划线
- (void)setInfo:(NSString *)info;
- (void)setInfo:(NSString *)info
{
    _info = info;
}

getter方法

  • 作用:设置成员变量的值
  • 写法:
    1. getter方法一定是对象方法
    2. 方法名称就是成员变量的名称去掉下划线
    3. 一定有返回值,返回值一定和获取的成员变量的类型一致
    4. 一定没有参数
- (NSString *)info;
- (NSString *)info
{
    return _info;
}
属性 setter getter
可读可写
只读
只写
私有

在定义setter和getter之后就可以使用点语法
点语法是编译器的特性,在翻译成二进制语言的时候,语言自动切换为setter和getter的方法

点语法在 = 号左边,那么自动转化为setter
点语法在 = 号右边,或是没有等号,那么自动转化为getter

建议使用在成员赋值

Person *p = [Person new];
p.name = @"aaa";
[p setName:@"aaa"];

自定义代码块

getter-setter方法 和 自定义代码块
getter-setter方法 和 自定义代码块