/*模拟银行账号
1.余额
2.存钱
3.取钱
4.转账
*/
object z1118 {
class Bank(private[this] var balance: Double) {
// 存钱
def deposit(amount: Double): Unit = {
balance += amount
}
// 取
def withdraw(amount: Double): Unit = {
if (balance >= amount) {
balance -= amount
}
}
def getBalance(): Double = balance
}
object Bank {
def clear(bank: Bank): Unit = {
// bank.balance = 0 // 在第11行,添加了private[this] 之后,就不能再直接访问balance属性
}
}
def main(args: Array[String]): Unit = {
val bank = new Bank(100)
bank.deposit(1000)
bank.withdraw(200)
// bank.balance == 100
// bank.balance == 100
Bank.clear(bank)
println(bank.getBalance())
}
}