OC之成员变量封装

#import<Foundation/Foundation.h>学习

@interface Student : NSObjectspa

{.net

    // 成员变量尽可能不要用@public 对象

    // @public get

    int age;io

    //@public class

    // 只读(readonly):只容许外界访问个人no,不容许外界修改个人noimport

    int no; // 只须要提供get方法变量

}方法

 

/*

 set方法

 1.做用:提供一个方法给外界设置成员变量值,能够在方法里面对参数进行相应过滤

 2.命名规范:

 1方法名必须以set开头

 2set后面跟上成员变量的名称,成员变量的首字母必须大写

 3)返回值必定是void

 4必定要接收一个参数,并且参数类型跟成员变量类型一致

 5形参的名称不能跟成员变量名同样

 */

- (void)setAge:(int)newAge;

/*

 get方法

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

 2.命名规范:

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

 2方法名跟成员变量名同样

 3不须要接收任何参数

 */

- (int)age;

- (void)study;

@end

 

 

@implementation Student

// set方法的实现

- (void)setAge:(int)newAge

{

    // 对传进来的参数进行过滤

    if (newAge <= 0)

    {

        newAge = 1;

    }

    age = newAge;

}

 

- (int)age

{

    return age;

}

 

 

- (void)study

{

    NSLog(@"%d岁的学生在学习",age);

}

@end

 

int main()

{

    Student *stu = [Student new];

    //stu->age =-10;

    //stu->age = 10;

    [stu setAge:10];

    NSLog(@"学生的年龄是%d", [stu age]);

    //[stu study];

    return 0;

}

相关文章
相关标签/搜索