[英]how to write accessor and mutator?
計算損失的汽油量,並將汽車的當前汽油量設置為新值。 我忘記將這部分添加到問題中。 氣體量不超過最大氣體容量。 我想知道是這樣嗎?
private final int GAS_CAP = 30
public int getGasCapacity(int gasCapacity)
{
if(currentGas <= GAS_CAP)
{
gasCapacity = GAS_CAP - currentGas;
}
else gasCapacity = currentGas;
return gasCapacity;
}
您的方法不會改變對象的狀態,它只會返回一個值。 您只能為方法的gasCapacity
參數分配一個值,該值是方法的局部值。
如果應該突變某些東西,那么您就錯了。
此外,您不會對gasCapacity
變量中傳遞給您的方法的值做任何事情,因此您的邏輯似乎不正確。
為此,您可能需要兩種方法,一種是獲取當前氣體(訪問器),而另一種是設置它(更改器)。
public int getGasLost(){
return GAS_CAP - currentGas;
}
public void setGasCapacity(int gasCapacity){
GAS_CAP = gasCapacity;
}
但是,由於GAS_CAP
似乎是一個final
值,您將無法更改它,您可以確認嗎?
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.