zoukankan      html  css  js  c++  java
  • oc总结第三讲 setter getter 方法 点运算符

    本次总结oc中成员变量赋值赋值方法----settet、getter命名方法   点运算符
    1.settet、getter命名方法
          为对象中的某个实例变量赋值的方法称为修改方法,用来修改对象的状态这类修改方法称为setter
          另外对应的取之方法称为getter
    命名习惯
          -setter方法根据所更改的变量名称来命名      例如   变量名为age   则为setAge
          -getter方法根据所取得的变量名称来命名      例如   变量名为age,直接为age即可
    2.点运算符命名方法
          点运算符在OC的类对象中不能访问成员变量,如student.age=5,这里不是使用成员变量age,而是调用成员方法setAge,相当于给student.age赋值时,调用方法[student setAge:5]。
          NSLog(@”%d”,student.age); 这里也不是使用成员变量age,而是调用成员方法age,使用student.age表达式的值时,实际上就是调用成员方法age,[student age]。
    “. ”不能调用成员变量,只是调用set函数和get函数的一种简写。这里不能理解为,定义了get函数和set函数就能调用成员变量,因为将这两个函数,不以一般形式书写时,使用student.age时,就会报错。
    创建一个student类,对类的对象进行赋值
     
     main函数中
    #import <Foundation/Foundation.h>
    #import "Student.h"
    int main(int argc, const char * argv[]) {
        @autoreleasepool {
            Student *stu = [[Student alloc] init];
            stu.name = @“abc";//这个是点运算符
            [stu setName:@"老王"];
            [stu setAge:90];
            NSString *name = [stu name];
            NSLog(@"隔壁住着:%@",name);  
        }
        return 0;
    }
    .h文件
    #import <Foundation/Foundation.h>
    @interface Student : NSObject{
        NSString *name;
        int      age;
    }
    //setter方法,用于赋值,格式:-(void)set变量名(首字母大写):(成员变量类型)形参名
    -(void)setName:(NSString *)newName;
    //getter方法,用于取值,所以需要一个返回值,此返回值类型与成员变量类型保持一致,格式:-(成员变量类型)成员变量名
    -(NSString *)name;
    -(void)setAge:(int)age1;
    -(int)age;
    @end
    .m文件
    #import "Student.h"
    @implementation Student
    -(void)setName:(NSString *)newName{
        name = newName;
    }
    -(NSString *)name{
        return name;
    }
    -(void)setAge:(int)age1{
        if (age1 > 100 || age1 < 0) {             //用if条件进行一个判断
            NSLog(@"年龄不合理,请重新赋值");
        }else{
            age = age1;
        }
    }
    -(int)age{
        return age;
    }
    @end
     
    最后说一下函数前的“+”与“-”
    OC中常见函数名称前面常带有“+”和“-”,这里的加减号分别代表了不同的方法类型。
    + 代表 函数为类的函数,调用时用类名调用。
    -  代表 函数为对象的函数,调用时需用对象调用。
    类没有空间,没有成员变量的空间,类的方法不能使用对象的成员变量。
     
  • 相关阅读:
    忏悔书(IT攻城狮)
    【博文汇总】彩色图像分割 Menu
    【Android】Android 4.2源码下载(ubuntu 12.10)
    【My Project】织物疵点检测机器视觉系统 软件测试平台
    【NFC】Android NFC API Reference中英文
    【分享】RSS订阅技巧及工具和实用RSS链接分享
    【流媒體】live555—VS2010/VS2013 下live555编译、使用及测试
    vc++ win32项目属性介绍(二、c/c++)
    c风格回调函数 vs c++风格虚基类,关于接口定义和调用的对比
    关于移动技术的我的看法(二)
  • 原文地址:https://www.cnblogs.com/qing92/p/4931409.html
Copyright © 2011-2022 走看看