OC_可见度,方法

***Student.h***

@interface Student : NSObject {

// 特征
// 成员变量可见度
// @public 级别最低,可通过对象->的方式找到成员变量,不安全
// @protected 没写可见度,默认是被保护的,被保护变量可在当前类和其子类中使用
// @private 私有的:只能在当前类中使用
// @package 这是系统文件使用的,直接跳过

    NSString *_stuName;
    NSString *_stuSex;
    NSString *_stuHobby;
    CGFloat _stuScore;
    NSInteger _stuAge;
}

- (void)sayHi;
- (void)eat;
- (void)play;

// 对所有成员变量的赋值语句
// 只要有参数,就一定要假冒号,冒号相当于标识参数
// 在调用方法的时候我们通过参数形容词知道对应要填的参数,形参名是在方法实现时用的

- (void)setStuName:(NSString *)stuName
         stuSex:(NSString *)sex
         stuAge:(NSInteger)stuAge
       stuHobby:(NSString *)stuHobby
       stuScore:(CGFloat)stuScore;

// 设置器和访问器都针对一个成员变量进行值得存储和读取,当对多个成员进行操作时,称为赋值语句
// 设置器

- (void)setStuName:(NSString *)stuName;
- (void)setStuSex:(NSString *)stuSex;
- (void)setStuAge:(NSInteger)stuAge;
- (void)setStuHobby:(NSString *)stuHobby;
- (void)setStuScore:(CGFloat)stuScore;

// 访问器

- (NSString *)stuName;
- (NSString *)stuSex;
- (NSInteger)stuAge;
- (NSString *)stuHobby;
- (CGFloat)stuScore;

// 自定义初始化方法
// 方法必须以init开头,后跟一个With

- (id)initWithStuName:(NSString *)stuName
               stuSex:(NSString *)stuSex
               stuAge:(CGFloat)stuAge
             stuScore:(CGFloat)stuScore;

// 方法分为两种,一种是+方法,称为类方法,这种方法一般是类进行使用,比如alloc
// 第二种为-方法,称为实例方法,一般对象来调用入sayHi,init

@end
***Student.m

@implementation Student
- (void)sayHi {
    NSLog(@"\n%@ %@ %@ %g %ld", _stuName, _stuSex, _stuHobby, _stuScore, _stuAge);
}
- (void)eat {
    NSLog(@"吃吃吃");
}
- (void)play {
    NSLog(@"不约");
}

// 设置器

- (void)setStuName:(NSString *)stuName {
    _stuName = stuName;
}
- (void)setStuSex:(NSString *)stuSex {
    _stuSex = stuSex;
}
- (void)setStuAge:(NSInteger)stuAge {
    _stuAge = stuAge;
}
- (void)setStuHobby:(NSString *)stuHobby {
    _stuHobby = stuHobby;
}
- (void)setStuScore:(CGFloat)stuScore {
    _stuScore = stuScore;
}

// 访问器

- (NSString *)stuName {
    return _stuName;
}
- (NSString *)stuSex {
    return _stuSex;
}
- (NSInteger)stuAge {
    return _stuAge;
}
- (NSString *)stuHobby {
    return _stuHobby;
}
- (CGFloat)stuScore {
    return _stuScore;
}

// 初始化方法实现

- (id)initWithStuName:(NSString *)stuName
               stuSex:(NSString *)stuSex
               stuAge:(CGFloat)stuAge
             stuScore:(CGFloat)stuScore {
    _stuName = stuName;
    _stuSex = stuSex;
    _stuAge = stuAge;
    _stuScore = stuScore;
    return self;
}
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值