Python面向对象(2)两个案例
目录
Python面向对象(2)两个案例
学习目标
- 烤地瓜
- 搬家具
烤地瓜
- 需求分析
- 步骤分析
- 代码实现
需求分析
需求主线:
- 被烤的时间和对应的地瓜状态:烤0-3分钟——生的,烤3-5分钟——半生不熟,烤5-8分钟——熟了,烤超过8分钟——烤糊
- 添加的调料:用户可以按自己的意愿添加调料。
步骤分析
需求涉及到一个事物就是地瓜,所以本案例涉及一个类:地瓜类。
定义类
-
地瓜的属性:
- 被烤的时间
- 地瓜的状态
- 添加的调料
-
地瓜的方法:
- 被烤
- 用户根据自己的意愿设定烤的时间
- 判断烤的时间在哪个区间,修改地瓜状态
- 添加调料
- 用户根据意愿来设定添加的调料
- 将用户添加的调料进行存储
- 被烤
-
显示对象的信息
初始代码:
|
|
对象调用cook方法传入的2会添加到初始化变量中
代码实现
|
|
搬家具
- 需求分析
- 步骤分析
- 代码实现
需求分析
将小于房子剩余面积的家具摆放到房子中。
步骤分析
需求涉及到两个事物:房子和家具,故被案例设计两个类,房子类和家具类。
定义类
- 房子类
- 实例属性:
- 房子的地理位置
- 房子的占地面积
- 房子的剩余面积
- 房子内的家具列表
- 实例方法:
- 容纳家具
- 显示房屋的信息
- 实例属性:
- 家具类:
- 实例属性:
- 家具名称
- 家具占地面积
- 实例属性:
代码实现
|
|
总结
- 面向对象重要组成部分:类和对象
- 类有属性和方法,对象可以调用其属性和方法。
- 类来实例化对象,
__init__()
魔法方法来设置初始化的属性,可以设置参数动态更改属性。 __init__()
魔法方法是不需要调用的,自动调用。