欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  IT编程

PTA 6-5设计一个BankAccount类2.0

程序员文章站 2022-05-04 14:22:31
##### 设计一个BankAccount类,这个类包括设计一个BankAccount类,这个类包括:(1)一个int型的balance变量表示账户余额。(2)一个无参数构造方法,将账户余额初始化为0。(3)一个带一个参数的构造方法,将账户余额初始化为输入的参数。(4)一个int型的accountNumber变量表示开户数量,每创建一个BankAccount对象就自动加1。(5)一个getBalance()方法:返回账户余额。(6)一个withdraw()方法:带一个int型的a...

设计一个BankAccount类,这个类包括

设计一个BankAccount类,这个类包括:

(1)一个int型的balance变量表示账户余额。

(2)一个无参数构造方法,将账户余额初始化为0。

(3)一个带一个参数的构造方法,将账户余额初始化为输入的参数。

(4)一个int型的accountNumber变量表示开户数量,每创建一个BankAccount对象就自动加1。

(5)一个getBalance()方法:返回账户余额。

(6)一个withdraw()方法:带一个int型的amount参数,从账户余额中提取amount指定的款额。 如果amount<0或者大于当前账户余额,则输出“Invalid Amount”。

(7)一个deposit()方法:带一个int型的amount参数,将amount指定的款额存储到该银行账户上。 如果amount<0,则输出“Invalid Amount”。

裁判测试程序样例:

import java.util.Scanner;
/* 请在这里填写答案 */
public class Main {

	public static void main(String[] args) {
          Scanner scanner = new Scanner(System.in);
          boolean choice1 = scanner.nextBoolean();
		   //是否创建对象 
		   if (choice1==true)
		   {
			    //账户1
		BankAccount myAccount1=new BankAccount();
			    //账户2
		BankAccount myAccount2=new BankAccount(100);
			    //选择操作类型
			    int choice2 = scanner.nextInt();
			    switch(choice2){
			      case 0://存款
	               int depositAmount=scanner.nextInt();
			  myAccount2.deposit(depositAmount);
			         break;
			       case 1://取款
			int withdrawAmount=scanner.nextInt();
			  myAccount2.withdraw(withdrawAmount);
			         break;
			    }
		        
		 System.out.println(myAccount2.getBalance());
		   }
	        
            System.out.println(BankAccount.accountNumber);
            scanner.close();
	}

}

输入样例:

输入1:

true
0 20

输出样例:

120
2

输入样例:

输入2:

true
1 120

输出样例:

输出2:

Invalid Amount
100
2

输入样例:

输入3:

false

输出样例:

输出3:

0

将accountNumber设为静态变量 注意在无参的构造方法和有参数的构造方法里都需要accountNumber++

class BankAccount{
    int balance;
    static int accountNumber = 0;
    public BankAccount(){
    accountNumber++;
        this.balance = 0;
    }//2)一个无参构造方法,将账户余额初始化为0。
    public BankAccount(int balance){
        accountNumber++;
        this.balance = balance;
    }//3)一个带一个参数的构造方法,将账户余额初始化为该输入的参数。
    public void setBalance()
    {
        this.balance=balance;
    }
    public int getBalance()
    {
        return balance;
    }//4)一个getBlance()方法,返回账户余额。
     public int withdraw(int amount)
    {
    	 if((amount<0)||(amount >this.balance)){
         	System.out.println("Invalid Amount");
             return this.balance;
         }
        this.balance -= amount;
        return this.balance;
    }//5)一个withdraw()方法:带一个amount参数,并从账户余额中提取amount指定的款额。如果amount<0或者大于当前账户余额,则输出“Invalid Amount”。
    public int deposit(int amonut)
    {
        if(amonut < 0){
        	System.out.println("Invalid Amount");
            return this.balance;
        }
        this.balance+=amonut;
        return this.balance;
    }//6)一个deposit()方法:带一个amount参数,并将amount指定的款额存储到该银行账户上。如果amount<0,则输出“Invalid Amount”。
    
}

 

本文地址:https://blog.csdn.net/m0_47807991/article/details/109557403

相关标签: java