如何使同一类别的两个对象使用不同的利率?
我需要这样做,以便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/