Menu
CoddyTech

项目设置

本课属于 Coddy Lua 学习旅程的“面向对象编程”单元。第 19 课,共 70 课。

challenge icon

挑战

简单

我们将开始“Digital Bank”项目。在接下来的几课中,你将构建一个 Account 类,它可以接收存款、处理取款、打印自身信息,还能向其他账户转账。一切都从整洁的文件结构和构造函数开始。

你的两个文件:

  • Account.lua:定义 Account 表,设置 Account.__index = Account,让实例能够找到它们的方法,并编写 :new() 构造函数。它会创建一个空表,将它的元表设为 Account,将它的 balance 设为 0,然后返回它。文件最后一行是 return Account。
  • main.lua:用 require('Account') 引入模块,用 Account:new() 创建两个账户,分别在单独一行打印它们的余额,然后打印 savings == checking,以显示两次调用生成了两个不同的表。

预期输出:

0
0
false

每个账户的初始余额都是 0。在下一课中,你将添加 :deposit(amount) 方法,让余额增加。

亲手试试

-- TODO: 使用 require 加载 Account 模块(文件名为 Account.lua)
local Account = nil

-- TODO: 使用 Account:new() 创建两个账户

-- TODO: 打印每个账户的余额(每行一个)

-- TODO: 打印两个账户是否为同一个表(它们不应该是)

面向对象编程中的所有课

自己练习: Lua 在线编译器