Java编程银行账户代码
我正在使用eclipse查看我的代码,出现的最常见错误是“令牌上的语法错误,构造错误”。我不确定我做错了什么,但我对Java还是相当陌生的 我的代码应该从银行帐户中提取指定的(用户输入)金额,我从10000美元开始,并设置程序,以便如果提取金额小于0或大于10000美元,它将触发断言错误Java编程银行账户代码,java,Java,我正在使用eclipse查看我的代码,出现的最常见错误是“令牌上的语法错误,构造错误”。我不确定我做错了什么,但我对Java还是相当陌生的 我的代码应该从银行帐户中提取指定的(用户输入)金额,我从10000美元开始,并设置程序,以便如果提取金额小于0或大于10000美元,它将触发断言错误 class ThreadsUnitProject2 { public static void main(Sting args []) // Field member private int balance
class ThreadsUnitProject2 {
public static void main(Sting args [])
// Field member
private int balance;
public void BankAccount()
{
balance = 10000;
}
public int withdraw(int amount)
{
// Subtract requested amount from balance
balance-=amount;
// Return requested amount
return amount;
}
public int getBalance()
{
return balance;
}
import java.util.Scanner;
class BankAccountTester extends BankAccount
{
public static void main(String[] args)
{
Scanner scan = new Scanner(System.in);
BankAccount myAccount = new BankAccount();
System.out.println("Balance = " + myAccount.getBalance());
System.out.print("Enter amount to be withdrawn: ");
int amount = scan.nextInt();
assert (amount >= 0 && amount <= myAccount.getBalance()):"You can't withdraw that amount!";
myAccount.withdraw(amount);
System.out.println("Balance = " + myAccount.getBalance());
}
class ThreadsUnitProject2{
公用静态空干管(Sting参数[])
//现场成员
私人国际收支平衡;
公共无效银行帐户()
{
余额=10000;
}
公共整数取款(整数金额)
{
//从余额中减去请求的金额
余额-=金额;
//退回要求的金额
退货金额;
}
公共int getBalance()
{
收益余额;
}
导入java.util.Scanner;
类BankAccountTester扩展了BankAccount
{
公共静态void main(字符串[]args)
{
扫描仪扫描=新扫描仪(System.in);
银行账户myAccount=新银行账户();
System.out.println(“Balance=“+myAccount.getBalance());
系统输出打印(“输入要提取的金额:”);
int amount=scan.nextInt();
断言(amount>=0&&amount将类“ThreadsUnitProject2”重命名为BankAccount并删除main()方法,并将BankAccountTester类公开,最后从BankAccount构造函数中删除void。在看到代码中的许多问题后,我决定修复它,让您尝试从下面看到的解决方案中学习
这应该是第一个类文件
public class BankAccount {
private int balance;
public BankAccount() { //constructor
balance = 10000;
}
public int withdraw(int amount) {
balance -= amount;
return amount;
}
public int getBalance() {
return balance;
}
}
这应该是您的第二个类文件。此文件将包含您的main
方法,该方法将测试您的BankAccount类
import java.util.Scanner;
public class BankAccountTester {
public static void main(String[] args) {
Scanner scan = new Scanner(System.in);
BankAccount myAccount = new BankAccount();
System.out.println("Balance = " + myAccount.getBalance());
System.out.print ("Enter amount to be withdrawn: ");
int amount = scan.nextInt();
assert (amount >= 0 && amount <= myAccount.getBalance()) : "You can't withdraw that amount!";
myAccount.withdraw(amount);
System.out.println("NewBalance = " + myAccount.getBalance());
}
}
import java.util.Scanner;
公共类银行账户测试员{
公共静态void main(字符串[]args){
扫描仪扫描=新扫描仪(System.in);
银行账户myAccount=新银行账户();
System.out.println(“Balance=“+myAccount.getBalance());
System.out.print(“输入要提取的金额:”);
int amount=scan.nextInt();
断言(amount>=0&&amount将您的import java.util.Scanner;
移动到文件顶部。public static void main(Sting args[])
这需要括号。除其他内容外,你应该在提交时修复缩进,以便人们更容易阅读。此外,你似乎有两个main
方法?另一个问题是你没有ThreadsUnitProject2
类的构造函数。这意味着余额永远不会设置为10000.Also、 assert不应用于程序逻辑,因为在部署时,默认情况下它们是禁用的,需要使用-ea参数启用。这里有很好的解释: