Java 在子类中获取私有访问错误
我试图推翻取款方式,这样在储蓄账户中就不会透支。当我编译这个时,我得到一个错误,告诉我balance在BankAccount类中有私有访问权。我还需要将双倍余额作为私人余额Java 在子类中获取私有访问错误,java,subclass,Java,Subclass,我试图推翻取款方式,这样在储蓄账户中就不会透支。当我编译这个时,我得到一个错误,告诉我balance在BankAccount类中有私有访问权。我还需要将双倍余额作为私人余额 import java.util.*; public class BankAccount { private int id; private double balance, public BankAccount(int id,double balance) { this.id = id
import java.util.*;
public class BankAccount {
private int id;
private double balance,
public BankAccount(int id,double balance) {
this.id = id;
this.balance = balance;
}
public void setBalance (double balance){
this.balance = balance;
}
public double getBalance (){
return balance;
}
public void withdraw(double amount) {
balance = balance - amount;
}
}
public class SavingsAccount extends BankAccount {
public SavingsAccount(int id, double balance) {
super(id,balance);
}
public void withdraw(double amount) {
if(balance >= amount) {
super.withdraw(amount);
}
}
}
你有一个平衡的公共getter,你应该使用它
由于您的成员变量是私有的,编译器肯定会抱怨。这就是它要做的。为什么不使用您声明的getter方法呢?例如,将
if(balance>=amount)
更改为if(getBalance()>=amount)
谢谢。这就解决了问题。我应该看到的