请大神教我如何做好吗???

创建 OverdraftException 类
1. 建立一个共有类 OverdraftException. 这个类扩展RuntimeException 类。
2. 添加一个 double 类型的私有属性 deficit.增加一个共有访问方法 getDeficit
3. 添加一个有两个参数的共有构造器。deficit 参数初始化 deficit 属性
      修改 Account 类
4. 重写 withdraw 方法使它不返回值(即 void).
5. 修改代码抛出新异常,指明“资金不足”以及不足数额(当前余额扣除请求的数额)
修改 CheckingAccount 类
6. 重写 withdraw 方法使它不返回值(即 void)
7. 修改代码使其在需要时抛出异常。两种情况要处理:第一是存在没有透支保护的赤
字,对这个异常使用“没有透支保护”信息。第二是 overdraftProtection 数
额不足以弥补赤字:对这个异常可使用 ”透支保护资金不足”信息



输入

输入描述:输入姓名,余额初值,利率,支票余额,透支额度,取款额,存款额;名字,支票余额,取款额,存款额


输出

输出描述:输出个各账户支票账户交易记录和余额

样例输入

赵先生 500 0.05 200 500 470 100
李女士 200 500 100

样例输出

客户 [赵先生] 支票账户余额: 200.0 和透支额度500.0
取款 : 470.0
存款 : 100.0
客户 [赵先生] 支票账户余额: 100.0

客户 [李女士] 支票账户余额: 200.0
取款: 500.0
异常: 没有透支保护   赤字: 300.0
客户 [李女士] 支票账户余额: 200.0


主程序如下:



public  class Main {



  public static void main(String[] args) {

    Bank7 bank = Bank7.getBank();

    Customer7 customer;

    Account7  account;

    java.util.Scanner s = new java.util.Scanner(System.in);

    String name=s.next();

    double balance=s.nextDouble();

    double interestRate=s.nextDouble();

    double ch_balance=s.nextDouble();

    double protectedBy=s.nextDouble();

    double withdraw=s.nextDouble();

    double deposit=s.nextDouble();

    bank.addCustomer( name);

    customer = bank.getCustomer(0);

    customer.addAccount(new SavingAccount7(balance, interestRate));

    customer.addAccount(new CheckingAccount7(ch_balance, protectedBy));

    String name1=s.next();

    double ch_balance1=s.nextDouble();

    bank.addCustomer(name1);

    customer = bank.getCustomer(1);

    double withdraw1=s.nextDouble();

    double deposit1=s.nextDouble();

    customer.addAccount(new CheckingAccount7(ch_balance1));

    customer = bank.getCustomer(0);

    account = customer.getAccount(1);

    System.out.println("客户 [" + customer.getName()

         + "]"

         + " 支票账户余额: "

         + account.getBalance()

    + " 和透支额度"+protectedBy);

    try {

      System.out.println("取款 : "+withdraw);

      account.withdraw(withdraw);

      System.out.println("存款 : "+deposit);

      account.deposit(deposit);

    } catch (OverdraftException7 e1) {

      System.out.println("异常: " + e1.getMessage()

    + "   赤字: " + e1.getDeficit());

    } finally {

      System.out.println("客户 [" + customer.getName()

    + "]"

    + " 支票账户余额: "

    + account.getBalance());

    }

    System.out.println();

    customer = bank.getCustomer(1);

    account = customer.getAccount(0);

    System.out.println("客户 [" + customer.getName()

  + "]"

  + " 支票账户余额: "

  + account.getBalance());

    try {

      System.out.println("取款: "+withdraw1);

      account.withdraw(withdraw1);

      System.out.println("存款 : "+deposit1);

      account.deposit(deposit1);

    } catch (OverdraftException7 e1) {

      System.out.println("异常: " + e1.getMessage()

    + "   赤字: " + e1.getDeficit());

    } finally {

     System.out.println("客户 [" + customer.getName()

   + "]"

   + " 支票账户余额: "

   + account.getBalance());

    }

  }

}


135271641244121690
浏览 1223回答 0
0回答
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

Java