方法 getchangebalance 无法从 setchangebalance 方法中获取值, setchangebalance 获取 int 值并将其保存到 accountbalance 变量中,但是 getchangebalance 可以从 setchangebalance 中获取值。
编辑:CheckBalance.java
package atm;
import java.util.Scanner;
public class CheckBalance extends Validation {
Scanner sc = new Scanner(System.in);
public CheckBalance(int i) {
Validation vd = new Validation();
System.out.println("RM" + vd.getchangebalance());
System.out.println("1:menu \n2:Exit");
String temp = sc.next();
if (temp.equals("1")) {
Screen sr = new Screen(i);
}
if (temp.equals("2")) {
System.exit(0);
}
}
}
验证.java
package atm;
public class Validation {
public int[] account = {1231, 1232, 1233, 1234};
public int[] pin = {1231, 1232, 1233, 1234};
private int accountbalance;
public Validation() {
accountbalance = 0;
}
public void setchangebalance(int accountbalance) {
this.accountbalance = accountbalance;
}
public int getchangebalance() {
System.out.print("cuba setchangebalance" + accountbalance);
return this.accountbalance;
}
public void setbalanceminus(int newminus) {
accountbalance -= newminus;
}
public int getbalanceminus() {
return accountbalance;
}
public void setbalanceadd(int newadd) {
accountbalance += newadd;
}
public int getbalanceadd() {
return accountbalance;
}
}
因此,假设 getchangebalance() 将在存款或取款后存储该值,但该值不会改变。
因为CheckBalance
extends Validation
,您不需要在构造函数内部创建此类的实例。所以你的构造函数应该是这样的:
public class CheckBalance extends Validation {
public CheckBalance(int i) {
System.out.println("RM" + getChangeBalance());
...
}
...
}
如果您将在构造函数内部创建 Validation 实例,并且不将其分配给任何属性,则在构造函数完成它的工作后您将失去它。
其次,您可以更新您的 Validation 类,因为您的类确实使用了 4 种方法:
public class Validation {
public int[] account = {1231, 1232, 1233, 1234};
public int[] pin = {1231, 1232, 1233, 1234};
private int accountBalance; // because this is a primitive type, default value is 0
public int getAccountBalance () { // get current balance value
System.out.print("cuba setChangeBalance" + accountBalance);
return accountBalance;
}
public void setAccountBalance(int value) { // set balance
this.accountBalance= value;
}
public void minus(int value) { // remove from balance
accountBalance-= value;
}
public void add(int value) { // add to balance
accountBalance+= value;
}
}
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句