Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/377.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
返回变量java时遇到问题_Java_Static_Return_Bank - Fatal编程技术网

返回变量java时遇到问题

返回变量java时遇到问题,java,static,return,bank,Java,Static,Return,Bank,每次运行它时,我都不会得到任何返回变量。我所看到的只是过程完成的文本。正在寻求帮助您没有输出任何内容。使用System.out.println输出账户余额,例如 public class Account { static int accountNum; static int nextAccountNum = 112200; static double balance; public static void main(String args[]) { Accou

每次运行它时,我都不会得到任何返回变量。我所看到的只是过程完成的文本。正在寻求帮助

您没有输出任何内容。使用
System.out.println
输出账户余额,例如

public class Account
{
static int accountNum;
static int nextAccountNum = 112200;
static double balance;


    public static void main(String args[])
    {
        Account checkingAccount = new Account(1500.00);
        Account savingAccount = new Account(1000.00);
        Account moneyMarketAccount = new Account(500.00);

        checkingAccount.getAccountNumber();
        savingAccount.getAccountNumber();
        moneyMarketAccount.getAccountNumber();

    }

    public Account(double bal)
    {
        balance = bal;
        accountNum = nextAccountNum;
        nextAccountNum++;
    }

}

另外,将
accountNum
balance
变量设置为非
static
,否则余额和帐号将被每个新实例覆盖。

一个问题是
accountNum
balance
被声明为
static
。您需要将它们作为实例字段,以便
Account
的每个实例都有自己的值

没有得到输出的原因是
main()
方法创建了几个
Account
对象,但不处理它们

System.out.println(checkingAccount.getAccountNumber());

将主函数与具有多个实例的类分离通常是一种很好的做法。getter和setter方法用于正确封装类变量,这可能是帐户应该具备的。下面是一个例子

Main.java

public class Account
{
    static int nextAccountNum = 112200;
    int accountNum;
    double balance;

    public static void main(String args[])
    {
        Account checkingAccount = new Account(1500.00);
        Account savingAccount = new Account(1000.00);
        Account moneyMarketAccount = new Account(500.00);

        checkingAccount.getAccountNumber();
        savingAccount.getAccountNumber();
        moneyMarketAccount.getAccountNumber();

        System.out.println("Checking: " + checkingAccount.toString());    
        System.out.println("Savings: " + savingAccount.toString());    
        System.out.println("Money market: " + moneyMarketAccount.toString());    
    }

    public Account(double bal)
    {
        balance = bal;
        accountNum = nextAccountNum;
        nextAccountNum++;
    }

    @Override
    public String toString() {
        return "Account " + accountNum + ": balance=" + balance;
    }    
}
public class Main {
    public static void main(String args[])
    {
        Account checkingAccount = new Account(1,1500.00);
        Account savingAccount = new Account(2,1000.00);
        Account moneyMarketAccount = new Account(3,500.00);

        System.out.println("Account " + checkingAccount.getAccountNumber() 
                + " has balance of: " + checkingAccount.getBalance());
        System.out.println("Account " + savingAccount.getAccountNumber() 
                + " has balance of: " + savingAccount.getBalance());
        System.out.println("Account " + moneyMarketAccount.getAccountNumber() 
                + " has balance of: " + moneyMarketAccount.getBalance());
    }
}
Account.java

public class Account
{
    static int nextAccountNum = 112200;
    int accountNum;
    double balance;

    public static void main(String args[])
    {
        Account checkingAccount = new Account(1500.00);
        Account savingAccount = new Account(1000.00);
        Account moneyMarketAccount = new Account(500.00);

        checkingAccount.getAccountNumber();
        savingAccount.getAccountNumber();
        moneyMarketAccount.getAccountNumber();

        System.out.println("Checking: " + checkingAccount.toString());    
        System.out.println("Savings: " + savingAccount.toString());    
        System.out.println("Money market: " + moneyMarketAccount.toString());    
    }

    public Account(double bal)
    {
        balance = bal;
        accountNum = nextAccountNum;
        nextAccountNum++;
    }

    @Override
    public String toString() {
        return "Account " + accountNum + ": balance=" + balance;
    }    
}
public class Main {
    public static void main(String args[])
    {
        Account checkingAccount = new Account(1,1500.00);
        Account savingAccount = new Account(2,1000.00);
        Account moneyMarketAccount = new Account(3,500.00);

        System.out.println("Account " + checkingAccount.getAccountNumber() 
                + " has balance of: " + checkingAccount.getBalance());
        System.out.println("Account " + savingAccount.getAccountNumber() 
                + " has balance of: " + savingAccount.getBalance());
        System.out.println("Account " + moneyMarketAccount.getAccountNumber() 
                + " has balance of: " + moneyMarketAccount.getBalance());
    }
}

你希望得到什么?打印输出?