返回变量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());
}
}
你希望得到什么?打印输出?