【JavaSE 模拟账户 综合练习】

模拟账户 综合练习


1.功能要求

1.1 要求1

        写一个名为 Account 的类模拟账户.该类的属性和方法如下图所示。该类包括的属性:账号 id,余额 balance,年利率 annualInterestRate;包含的方法:访问器方法(getter 和 setter方法),取款方法 withdraw(),存款方法 deposit()。提示:在提款方法 withdraw 中,需要判断用户余额是否能够满足提款数额的要求,如果不能,应给出提示。

  • Account
  • private int id
  • private double balance
  • private double annualInterestRate
  • public Account (int id, double balance, double annualInterestRate )
  • public int getId()
  • public double getBalance()
  • public double getAnnualInterestRate()
  • public void setId( int id)
  • public void setBalance(double balance)
  • public void setAnnualInterestRate(double annualInterestRate)
  • public void withdraw (double amount)//取钱
  • public void deposit (double amount)//存钱

1.2 要求2

创建 Customer 类

  • 声明三个私有对象属性:firstName、lastName 和 account。
  • 声明一个公有构造器,这个构造器带有两个代表对象属性的参数(f 和 l)
  • 声明两个公有存取器来访问该对象属性,方法 getFirstName 和 getLastName 返回相应的属性。
  • 声明 setAccount 方法来对 account 属性赋值。
  • 声明 getAccount 方法以获取 account 属性。
    • Customer
    • private String firstName
    • private String lastName
    • private Account account
    • public Customer(String f,String l)
    • public String getFirstName()
    • public String getLastName()
    • public Account getAccount()
    • public void setAccount(Account account)

1.3 要求3

写一个测试程序。

  • 创建一个 Customer ,名字叫 Jane Smith, 他有一个账号为 1000,余额为 2000 元,年利率为 1.23% 的账户。
  • 对 Jane Smith 操作。存入 100 元,再取出 960 元。再取出 2000 元。

成功存入 :100.0
成功取出:960.0
余额不足,取款失败
Customer [Smith, Jane] has a account: id is 1000, annualInterestRate is 1.23%, balance is 1140.0


2.代码实现

//1、写一个名为 Account 的类模拟账户。
public class Account {
    private int id;//账号
    private double balance;//余额
    private double annualInterestRate;//年利率

    public Account(int id, double balance, double annualInterestRate) {
        this.id = id;
        this.balance = balance;
        this.annualInterestRate = annualInterestRate;
    }

    public int getId() {
        return id;
    }

    public void setId(int id) {
        this.id = id;
    }

    public double getBalance() {
        return balance;
    }

    public void setBalance(double balance) {
        this.balance = balance;
    }

    public double getAnnualInterestRate() {
        return annualInterestRate;
    }

    public void setAnnualInterestRate(double annualInterestRate) {
        this.annualInterestRate = annualInterestRate;
    }
    public void withdraw(double amount){//存钱
        this.balance+=amount;
        System.out.println("存入: "+amount+"\t"+"目前余额为:"+balance);
    }
    public void deposit(double amount){//取钱
        if (this.balance<amount){
            System.out.println("余额不足!");
            return;
        }
        this.balance-=amount;
        System.out.println("取出: "+amount+"\t"+"目前余额为:"+balance);
    }
}
//2. 创建 Customer 类。
public class Customer {
    private String firstName;
    private String lastName;
    private Account account;


    public Customer(String f,String l){
        this.firstName=f;
        this.lastName=l;

    }
    public String getFirstName() {
        return firstName;
    }

    public String getLastName() {
        return lastName;
    }

    public void setAccount(Account account) {
        this.account = account;
    }

    public Account getAccount() {
        return account;
    }

}
//3.测试程序。
public class Test {
    public static void main(String[] args) {
        Customer customer=new Customer("Jane","smith");
        Account account=new Account(1000,2000,0.0123);
        customer.setAccount(account);
           customer.getAccount().withdraw(100);
           customer.getAccount().deposit(960);
           customer.getAccount().deposit(2000);
//        account.withdraw(2565);//不涉及名称所以可以空account调用
//        account.deposit(2565);//不涉及名称所以可以空account调用
        System.out.println("Customer ["+customer.getFirstName()+","+ customer.getLastName()+"]"+"has a account: id is "+account.getId()+","+" annualInterestRate is "+account.getAnnualInterestRate()*100+"%"+",balance is "
        +account.getBalance());
        }


    }

测试成功截图:

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值