练习目标-Java 语言中面向对象的封装性及构造器的使用。
任务
在这个练习里,创建一个简单版本的(账户类)Account类。将这个源文件放入banking程序包中。在创建单个帐户的默认程序包中,已编写了一个测试程序TestBanking。这个测试程序初始化帐户余额,并可执行几种简单的事物处理。最后,该测试程序显示该帐户的最终余额。
1.创建banking 包
2.在banking 包下创建Account类。该类必须实现上述UML框图中的模型。
a.声明一个私有对象属性:balance,这个属性保留了银行帐户的当前(或即时)余额。
b.声明一个带有一个参数(init_balance)的公有构造器,这个参数为balance属性赋值。
c.声明一个公有方法getBalance,该方法用于获取经常余额。
d.声明一个公有方法deposit,该方法向当前余额增加金额。
e.声明一个公有方法withdraw从当前余额中减去金额。
3.编译TestBanking.java文件。
4.运行TestBanking类。可以看到下列输出结果:
Creating an account with a 500.00 balance
Withdraw 150.00
Deposit 22.50
Withdraw 47.62
The account has a balance of 324.88
///Class Account
package banking;
public class Account {
private double balance;
public Account(double i)
{
balance=i;
}
public double getBalance()
{
return balance;
}
public void deposit(double i)
{
balance+=i;
System.out.println("Deposit "+i);
}
public void withdraw(double i)
{
if(balance>=i)
{
balance-=i;
System.out.println("Withdraw "+i);
}
else
{
System.out.println("余额不足");
}
}
}
//Testbanking
package banking;
public class TestBanking {
public static void main(String[] args) {
Account a=new Account(500.00);
System.out.println("Creating an account with a "+a.getBalance()+"balance");
a.withdraw(150.00);
a.deposit(22.50);
a.withdraw(47.62);
System.out.println("The account has a balance of "+a.getBalance());
//运行结果
Creating an account with a 500.0balance
Withdraw 150.0
Deposit 22.5
Withdraw 47.62
The account has a balance of 324.88