Objective-C

04-面向对象语法03

2020-06-09  本文已影响0人  Andy_Livings

一、set方法和get方法

1.set方法和get方法的使用场合

@public的成员可以被随意赋值,应该使用set方法和get方法来管理成员的访问(类似机场的安检、水龙头过滤,过滤掉不合理的东西),比如僵尸的生命值不能为负数

2.set方法

1)作用:用来设置成员变量,可以在方法里面过滤掉一些不合理的值
2)命名规范:

3.get方法

1)作用:返回对象内部的成员变量
2)命名规范:get方法的名称一般就跟成员变量同名

4.成员变量的命名规范
5.代码示例
#import <Foundation/Foundation.h>
// 声明
@interface Car : NSObject
{
    int _wheels; // 轮子个数
}
/*set方法*/
- (void) setWheels:(int)wheels;
/*get方法*/
- (int) wheels;
@end

@implementation Car
// set方法的实现
- (void) setWheels:(int)wheels
{
    // 对外面传进来的轮子数进行过滤
    if (wheels<=0)
    {
        wheels = 1;
    }
    
    _wheels = wheels;
}

// get方法的实现
- (int) wheels
{
    return _wheels;
}
@end
6.封装的好处
7.练习

1>Dog类,属性:weight、speed,方法:吃、跑
2>Person类,属性:dog、age,方法:喂狗、遛狗

二、类方法

1.基本概念

直接可以用类名来执行的方法(类本身会在内存中占据存储空间,里面有类\对象方法列表)

2.类方法和对象方法对比

1)对象方法

2)类方法

3)类方法和对象方法可以同名

3.示例

三、self关键字

1.成员变量和局部变量同名
2.使用细节

1)出现的地方:所有的OC方法中(对象方法\类方法),不能出现在函数
2)作用

3.常见错误
4.示例

四、习题

1.设计Car类,一个对象方法跟其他车子比较车速,返回速度差,一个类方法比较两辆车的车速,返回速度差
上一篇 下一篇

猜你喜欢

热点阅读