银行SY不想从课堂上恢复自己的信息,即使信息也可以很好地组织



方法getChangeBalance无法从setchangebalance方法获得值,setChangeBalance获取int值并将其保存到Accoumpalance balbalance变量中,但是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扩展了Validation,因此您无需在构造函数内部创建此类的实例。因此,您的构造函数应该看起来像这样:

public class CheckBalance extends Validation {
public CheckBalance(int i) {
    System.out.println("RM" + getChangeBalance());
    ...
   }
 ...
}

如果您将在构造函数内部创建一个验证实例,而不是将其分配给任何属性,则在构造函数完成其工作之后将其丢失。

其次,您可以更新验证类,因为您的课程确实使用了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;
}
}

我得到了您的印象,您不完全了解获取/设置方法的工作方式,否则您使用的屏幕类有一些无法正常工作的东西。

我建议您在验证类中添加一个简单的主要方法,以便您首先测试和了解该类的行为。

以下是这样一种主要方法的示例(基于Beri给出的验证版本,但随着打印的方式移出了GET方法(

public static void main(String[] args) {
  Validation validation = new Validation();
  System.out.println("Balance: " + validation.getAccountBalance());
  validation.setAccountBalance(100);
  System.out.println("Balance: " + validation.getAccountBalance());
  validation.minus(25);
  System.out.println("Balance: " + validation.getAccountBalance());
  validation.add(10);
  System.out.println("Balance: " + validation.getAccountBalance());
}

相关内容

最新更新