error: void type not allowed here
问:在一系列陈述中,将尼克账户中的所有资金 - 包括支票和储蓄 - 转移到卡罗尔的支票账户。这应该让尼克最后没有钱 - 即他的两个账户都有0钱。有几种方法可以实现。建议使用一个或多个中间变量来保存Nick的账户中的值,然后将该值存入Carol的支票账户。注意:您必须通过调用BankAccount类中定义的方法从Nick的帐户中获取值。使用BankAccount类中的相应方法打印出Nick和Carol帐户的检查和储蓄信息的报告。
一个。
公共类BankAccount {
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 | private String name; private int checkMoney; private int saveMoney; public BankAccount(String who, int checking, int saving){ name = who; checkMoney = checking; saveMoney = saving; } public String getAccountName(){ return name; } public int getCheckMoney(){ return checkMoney; } public int getSaveMoney(){ return saveMoney; } public void makeCheckingDeposit(int amt){ checkMoney = checkMoney + amt; } public void makeSavingsDeposit(int amt){ saveMoney = saveMoney + amt; } public void makeCheckingWithdrawal(int amt){ if(checkMoney >= amt) checkMoney = checkMoney - amt; } public void makeSavingsWithdrawal(int amt){ if(saveMoney >= amt) saveMoney = saveMoney - amt; } //prints name and both account balances to the console public void printReport() { System.out.println(name +" checking:" + checkMoney +" savings:" + saveMoney); } |
}
公共类BankingDriver {
public static void main(String [] args){
BankAccount nicksAcct = new BankAccount("Nick",450,550);
BankAccount carolsAcct = new BankAccount("Carol",600,700);
int nicksCheckingMoney = nicksAcct.getCheckMoney();
int nicksSaveMoney = nicksAcct.getSaveMoney();
int deposit =(nicksAcct.makeCheckingWithdrawal(nicksCheckingMoney)+ nicksAcct.makeSavingsWithdrawal(nicksSaveMoney));
carolsAcct.makeCheckingDeposit(存款);
nicksAcct.printReport();
carolsAcct.printReport();
}
}
BankDriver的第7行一直给我这里不允许的'void'类型错误。有人可以向我解释为什么会这样做吗?
您不能将两个
1 2 3 4 5 6 |
希望这显然毫无意义。 实际上,您无法对
如果要添加
1 2 | public int makeCheckingWithdrawal(int amt) { ... } public int makeSavingsWithdrawal(int amt) { ... } |
您从这些方法返回的值取决于您的要求。