您的位置:首页 > 编程语言 > C语言/C++

在oc语言中对象对象属性的封装

2014-11-12 12:24 288 查看
#import <Foundation/Foundation.h>

//枚举

typedef enum {

    SexMan,

    SexWoman

} Sex;

@interface Student : NSObject

{/*成员变量的命名规范:一定要以下划线 _ 开头

  作用:

  1.让成员变量和get方法的名称区分开

  2.可以跟局部变量区分开,一看到下划线开头的变量,一般都是成员变量

  */

//属性默认是@private

    int _no;

    Sex _sex;

}

/*
 set方法
 1.作用: 提供一个方法给外界设置成员变量值,可以在方法里面对参数进行相应过滤
 2.命名规范:
 1> 方法名必须以set开头
 2> set后面跟上成员变量的名称,成员变量的首字母必须大写
 3> 返回值一定是void
 4> 一定要接收一个参数,而且参数类型跟成员变量类型一致
 5> 形参的名称不能跟成员变量名一样
 */

- (void)setSex:(Sex)sex;

/*

 get方法

 1.作用:返回对象内部的成员变量

 2.命名规范:

 1> 肯定有返回值,返回值类型肯定与成员变量类型一致

 2> 方法名跟成员变量名一样

 3> 不需要接收任何参数

 */

- (Sex)sex;

// no的set和get方法

- (void)setNo:(int)no;

- (int)no;

@end

@implementation Student

- (void)setSex:(Sex)sex

{

    _sex = sex;

}

- (Sex)sex

{

    return _sex;

}

- (void)setNo:(int)no

{

    _no = no;

}

- (int)no

{

    return _no;

}

@end

int main()

{

    Student *stu = [Student new];

    

    [stu setSex:SexMan];

    [stu setNo:10];

    

    [stu sex];

    

    [stu no];

    

    return 0;

}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  OC语言
相关文章推荐