gpt4 book ai didi

java - 方法检索和继承困惑

转载 作者:行者123 更新时间:2023-12-01 17:33:17 26 4
gpt4 key购买 nike

好吧,所以我遇到了很多麻烦,我仍在学习 Java,我的书给我设置了一个我在网上发现的常见任务,我陷入困境的部分是......

我必须创建一个银行账户计划,为账户持有人提供一个储蓄账户(有利率且无 overdraw 便利)和一个支票账户(有 100 英镑的 overdraw 便利且无利息)。

我还没有实现 overdraw ,只准备了一半的提款和存款功能,但我的问题是利息,我已经在我的父类(super class)中定义了储蓄账户余额和支票账户余额,所以在计算时我对储蓄账户类别的兴趣我无法引用 savebalance,因为我已将其设为私有(private)。我正在尝试使用 set.name 方法,但我显然做错了......

对任何能够提供帮助或提供建议的人,一个灿烂的微笑和感谢!

父类(super class)如下:

public class BankDetails
{
private String customer;
private String accountno;
private double savebalance;
private double checkbalance;


//Constructor Methods

public BankDetails(String customerIn, String accountnoIn, double savebalanceIn, double checkbalanceIn)
{
customer = customerIn;
accountno = accountnoIn;
savebalance = savebalanceIn;
checkbalance = checkbalanceIn;
}

// Get name
public String getcustomername()
{
return (customer);
}

// Get account number
public String getaccountnumber()
{
return (accountno);
}

public double getcheckbalanceamount()
{
return (checkbalance);
}

public double getsavebalanceamount()
{
return (savebalance);
}


public void savewithdraw(double savewithdrawAmountIn)

{
savebalance = savebalance - savewithdrawAmountIn;

}

public void checkwithdraw(double checkwithdrawAmountIn)

{
checkbalance = checkbalance - checkwithdrawAmountIn;

}


public void savedeposit(double savedepositAmountIn)

{
savebalance = savebalance - savedepositAmountIn;

}

public void checkdeposit(double checkdepositAmountIn)

{
checkbalance = checkbalance - checkdepositAmountIn;

}




} // End Class BankDetails

子类如下:

    import java.util.*; 

public class Savings extends BankDetails
{

private String saveaccount;
private double interest;


public Savings(String customerIn, String accountnoIn, float interestIn,
String saveaccountIn, double savebalanceIn)
{


super (customerIn, accountnoIn, savebalanceIn, interestIn);


saveaccount = saveaccountIn;
interest = interestIn;

}


public String getsaveaccountno()
{
return (saveaccount);
}

public double getinterestamount()
{
return (interest);
}


public void interestamount(String[] args)

{
BankDetails.getsavebalanceamount(savebalance);
interest = (savebalance / 100) * 1.75;


}


}

最佳答案

使用父类(super class)的 getSaveBalance() 方法来访问余额(该方法的名称很可疑,因为您有一个储蓄帐户类,但将余额保留在其他地方)。

(目前是 getsavebalanceamount(),我假设要重命名以符合 Java 约定。)

<小时/>

我建议在命名 getter 和 setter 时使用一致的 CamelCase,例如 getInterestAmount()getSaveAccountNo() 等。

我建议不要注释简单的 getter/setter,但如果这样做,请使用 Javadoc 约定,例如:

/** Returns current savings account balance. */
public double getSaveBalance() { ... etc ... }

我还建议避免不必要的括号,就像目前在 setter/getter 中一样,例如:

public double getSaveBalance() {
return saveBalance; // No parens required.
}

关于java - 方法检索和继承困惑,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8864683/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com