当前位置: 首页 > 知识库问答 >
问题:

银行帐户程序,更改余额

万俟丁雷
2023-03-14

我想在取款后把账户上的余额换一下,但它只是停留在10点。我不知道如何在SavingsAccount中正确应用一个会改变它的方法。我试了但没有成功。

import java.util.Date;

public class Account {
    private int id;
    private double balance;
    private double annualInterestRate;
    private Date dateCreated;
    private double monthlyInterestRate;

    public Account() {
        id = 0;
        balance = 0;
        annualInterestRate = 0;
    }

    public Account(int iD, double balancE) {
        id = iD;
        balance = balancE;
    }

    public void setID(int iD) {
        id = iD;
    }

    public int getID() {
        return (id);
    }

    public void setBalance(double balancE) {
        balance = balancE;
    }

    public double getBalance() {
        return (balance);
    }

    public void setAnnualInterestRate(double AIR) {
        annualInterestRate = AIR;
    }

    public double getAnnualInterestRate() {
        return (annualInterestRate);
    }

    public void setDateCreated(Date dateCreated) {
        this.dateCreated = dateCreated;
    }

    public double getMonthlyInterestRate() {
        return ((annualInterestRate / 100) / 12);
    }

    public double getMonthlyInterest() {
        return (balance * monthlyInterestRate);
    }

    public void withdraw(double ammount) {
        balance = balance - ammount;
    }

    public void deposit(double ammount) {
        balance = balance + ammount;
    }
}

public class SavingsAccount extends Account {
    public SavingsAccount(int iD, double balancE) {
        super(iD, balancE);
    }

    @Override
    public void withdraw(double amount) {
        if (amount > getBalance()) {
            System.out.println("Current Balance: " + getBalance() 
                    + "\nThe             withdrawal  cannot be made due to insufficient  funds.");
        }

    }
}



public class Test extends Account {

    public static void main(String[] args) {
        SavingsAccount a1 = new SavingsAccount(1122, 10.00);
        a1.withdraw(5.00);
        a1.deposit(00.00);
        a1.setAnnualInterestRate(4.5);
        Date dat = new Date();

        System.out.println("Balance: " + a1.getBalance() + 
                "\nMonthly Interest: " + a1.getMonthlyInterest() + 
                "\nDate Created: " + dat);

    }
}

共有1个答案

唐健
2023-03-14

尝试:

public void deposit(double ammount) {
        balance = balance + ammount;
        setBalance(balance);
    }

您应该在退出和平衡结束时调用setBalance,传入新的余额金额。

 类似资料:
  • 问题内容: 每次开设银行帐户,帐户ID都应加1,但是每次我尝试拉出ID时,我只会得到帐户ID为0,这是任何建议,因为我完全按照从书中学习的方式进行学习而且仍然没有更新。 帐户构造函数: 银行账户主程序: 问题答案: 您可以采用一种杂乱的方式构造BankAccount对象,其中是否分配ID取决于您使用的构造函数。如果您重写构造函数以便将它们链接在一起,而主要构造函数负责所有核心职责,而次要构造函数将

  • 所以我有一个任务来创建一个程序,它有一个起始余额为1的银行账户。然后,我创建了一组卡,可以访问该帐户、存款或取款,但不能同时进行。我创建了许多线程,然后使用这些线程访问银行帐户,提取或存入随机金额,然后退出。 我的卡片类别: 我的帐户类别: } 我的课程 } 输出示例: http://puu.sh/lvoE5/05ebcd4c74.png 正如你所看到的,它对每一张不同的卡都有效,它回到5000,

  • 你好,我正在Java办理银行申请。 我的问题是我不知道如何删除创建的帐户。 当我创建一个新的帐户,它得到一个新的号码,但我不知道如何删除一个帐户,如果有像3个帐户,我想删除帐号2,当我想创建一个新的帐户,它将得到ID号码2。(有1号和3号)。 当我想创建另一个帐户时,我想将其ID更改为4。 提前道谢。:)

  • 我目前正在完成我的银行账户计划,但在完成的过程中遇到了一些问题。这个问题似乎很容易解决,但我不知道该如何着手解决它。 我将首先包括以下作业: > 实现一个类库。这家银行有两个对象,即支票和储蓄,这两种类型的账户是在上一次练习中开发的。 实现四种实例方法: 存款(双倍金额,String账户) 提现(双倍金额,String账户) 转账(双倍金额,String账户) printBalance() 这里的

  • 为Google Apps域的管理员寻找当前修改其他用户拥有的Google Drive对象权限的最佳方法。我将在Google App Engine上开发该应用程序。 使用两条腿的OAuth和Google文档列表API非常简单:https://developers.google.com/gdata/docs/auth/oauth#2LeggedOAuth但是现在Google Drive SDK是实时A