这是我完成的代码,我想知道是否需要更正
这是我的第一堂课
public class Account
{
private double balance; //STATE
private double interestRate; //STATE
private double rate;//STATE
public Account()
{
balance = 0;
interestRate = 0;
}
public Account(double amount, double interestRate)
{
balance = amount;
rate = interestRate;
}
public void deposit(double amount)
{
balance=balance+amount;
}
public void withdraw(double amount)
{
balance = balance - amount;
}
public void setInterest(double rate)
{
balance = balance + balance * rate;
//this.setInterst = setInterest;
//setInterest = InterestRate / 12;
}
public double computeInterest(int n)
{
balance=Math.pow(balance*(1+rate),n/12);
return balance;
}
public double getsetInterest()
{
return rate;
}
public double getBalance()
{
return balance;
}
public void close()
{
balance =0;
}
}
这是我的第二堂课
public class TestAccountInterest
{
public static void main (String[] args)
{
Account acc1 = new Account(500, 0.1);//0.10);
Account acc2 = new Account(400, 0.2); //0.20);
/*************************************
ACC1 ACCOUNT BELOW
*************************************/
acc1.deposit(500);
acc1.withdraw(300);
acc1.computeInterest(12);
System.out.println(acc1.computeInterest(12));
/**************************************
ACC2 ACCOUNT BELOW
**************************************/
acc2.withdraw(200);
acc2.deposit(800);
acc2.computeInterest(24);
System.out.println(acc2.computeInterest(24));
}
}
任何人都可以看到我是否能够使代码更紧凑,并且是我编码完全有效的方式。代码是关于一个Accounts类,其中第二个类具有测试帐户类,它应该计算第一个类的12个月的计算兴趣,而第二个类应该是大约24个月。
答案 0 :(得分:0)
Account
课程看起来不错,但我不明白为什么setIntrest()
没有设置兴趣,而是更改余额。也许这是设计,也许不是,但我发现有点令人惊讶。
如果您想要更清晰地打印24个月computeIntrest
,请查看this question。
这些类型的问题不属于StackOverflow。在这里,我们主要(尝试)解决问题。建议对工作代码进行改进this way。