입금 메서드
Coddy Lua 여정의 객체 지향 프로그래밍 (Object Oriented Programming) 섹션에 포함된 레슨. 70개 중 20번째.
챌린지
쉬움이제 Digital Bank 프로젝트를 시작합니다. 새로운 시스템에 기능을 추가할 시간입니다! 이제 시작 잔액이 0인 계정을 만들 수 있으므로, deposit을 통해 돈을 받을 수 있는 기능을 추가해 봅시다.
기존 Account class를 기반으로, 지정된 금액만큼 계정의 잔액을 늘리는 :deposit(amount) method를 추가합니다. 이는 기본적인 banking operation입니다. 돈이 들어오고 잔액이 증가합니다!
두 개의 파일이 있습니다:
Account.lua::deposit(amount)method를 추가하여 Account class를 확장합니다. 이 method는 주어진 금액을self.balance에 더해야 합니다. 이전 lesson의 모든 내용(class 구조와:new()constructor)을 그대로 유지하세요.main.lua: Account module을 Require하고, 계정을 하나 만든 다음, 몇 번의 deposit을 수행하여 balance가 어떻게 변하는지 보여 주세요.
다음 세 개의 입력을 받습니다:
- 첫 번째 deposit 금액
- 두 번째 deposit 금액
- 세 번째 deposit 금액
main 파일에서 single account를 만들고 세 번의 deposit을 순서대로 Perform하세요. 각 deposit 후에 현재 balance를 새 줄에 print하세요.
예를 들어 입력이 100, 50, 25라면 출력은 다음과 같아야 합니다:
100
150
175각 deposit이 이전 balance를 기반으로 누적되는 것을 확인하세요. 계정은 0에서 시작한 다음, 첫 번째 deposit 후 100, 두 번째 후 150, 세 번째 후 175로 증가합니다. :deposit() method가 이러한 누적을 수행합니다!
직접 해보기
-- Account 모듈 불러오기
local Account = require('Account')
-- 세 개의 입금액 읽기
local deposit1 = tonumber(io.read())
local deposit2 = tonumber(io.read())
local deposit3 = tonumber(io.read())
-- 단일 계정 생성
local account = Account:new()
-- 세 번의 입금을 수행하고 각각 후에 잔액 출력
-- TODO: deposit1을 입금하고 account.balance 출력
-- TODO: deposit2을 입금하고 account.balance 출력
-- TODO: deposit3을 입금하고 account.balance 출력
객체 지향 프로그래밍 (Object Oriented Programming)의 모든 레슨
직접 연습해 보세요: 온라인 Lua 컴파일러