学完「方法互调、字段可写、方法当值」,动手做一做。
让一个方法调用同一个对象的另一个方法。
类 温度
初始化(摄氏)
函数 华氏()
返回 自己.摄氏 * 9 / 5 + 32
函数 说明()
返回 @"华氏 {自己.华氏()} 度"
打印(温度(20).说明())
解析:
自己.华氏()调用的仍是当前这个温度对象的方法。
把对象的方法装进变量,再通过变量调用。
类 计价器
初始化(单价)
函数 总价(数量)
返回 自己.单价 * 数量
设 一个 = 计价器(8)
设 算钱 = 一个.总价
打印(算钱(3)) # 24
解析:取出的方法会记住它来自
一个,调用时仍能读到一个.单价。
写一个「账户」类:初始化(余额),方法 存(数) 把钱加进去、取(数) 把钱取出来(钱不够就返回「余额不足」)。然后造一个 账户(100),存 50、取 30,打印余额。
类 账户
初始化(余额)
函数 存(数)
自己.余额 = 自己.余额 + 数
返回 自己.余额
函数 取(数)
如果 数 > 自己.余额
返回 "余额不足"
自己.余额 = 自己.余额 - 数
返回 自己.余额
设 我的 = 账户(100)
打印(我的.存(50)) # 150
打印(我的.取(30)) # 120
解析:
存(数)和取(数)都用自己.余额 = 自己.余额 ± 数改字段(字段可写)。取(数)里先如果 数 > 自己.余额判断——钱不够就返回提示,够了才扣。这是「字段可写 + 判断」配合的典型写法。
下一课:类的实践 —— 做一个记账本。