如何使同一类别的两个对象使用不同的利率?

我需要这样做,以便SavingAccount2和SavingAccount3使用不同的利率。

savingAccount1UI savingAccount2 = new savingAccount1UI();
savingAccount1UI savingAccount3 = new savingAccount1UI();


这些对象均从名为Account.java的类继承。该超类包含所有方法,包括如何计算利息。

这是超类中当前用于计算1年利息account.java的方法:

//add interest
  public void interest(double interest){
      if(balance<target){

          interest = balance*lowRate;
          balance = balance + interest;
          updatebalance();
      } else{
          interest=balance*highRate;
          balance = balance + interest;
      }
      updatebalance();
   }


这是触发此方法的按钮:

private void jButton4ActionPerformed(java.awt.event.ActionEvent evt) {
    interest(Float.parseFloat(balanceLabel.getText().substring(1)));


当前,我正在使用分配了双精度值的变量,但是,这当然意味着两个对象(SavingAccount2和SavingAccount3)使用相同的数字。请注意,这些变量存储在Account.java超类中,如下所示:

public double lowRate = 0.019;
public double highRate = 0.025;


我想我可能需要为每个对象使用一个构造函数,并使用预设值来解决我的问题,但是我不知道如何实现该想法。有什么建议么?

最佳答案

您可以在Account类中编写方法来设置lowRate和highRate的值,例如:

public void setRates(double lr, double hr){
       lowRate=lr;
       highRate=hr;
}


现在,当您创建类SavingsAccount的对象时,您可以执行以下操作:

SavingsAccount sa=new SavingsAccount();
sa.setRates(0.019,0.025);

关于java - 将两个不同的利率集应用于同一类别的两个对象,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/36626598/

10-14 16:15
查看更多