21xrx.com
2024-12-23 07:50:25 Monday
登录
文章检索 我的文章 写文章
Java实现ATM机功能 - 详细代码案例
2023-06-13 00:50:21 深夜i     --     --

ATM(自动取款机)是现代金融系统不可或缺的组成部分。它们允许用户进行多种金融交易,包括存款、取款、账户余额查询等等。

在本文中,我们将使用Java构建一个ATM机的简单实现,让您了解ATM机的工作原理。我们将学习如何通过Java来创建银行账户和模拟账户交易,以及实现安全功能来保护用户资金的安全。

以下是具体实现的Java代码示例:


public class Account {

 private double balance;

 private String accountNumber;

 public Account(String accountNumber, double balance)

  this.accountNumber = accountNumber;

  this.balance = balance;

 

 public double getBalance()

  return balance;

 

 public String getAccountNumber()

  return accountNumber;

 

 public void deposit(double amount) {

  balance += amount;

 }

 public void withdraw(double amount)

  balance -= amount;

 

}

public class ATM {

 private double cash;

 private int pin;

 public ATM(double cash, int pin)

  this.cash = cash;

  this.pin = pin;

 

 public double checkBalance(Account account) {

  return account.getBalance();

 }

 public boolean withdrawCash(Account account, double amount) {

  if (amount <= account.getBalance() && amount <= cash) {

   account.withdraw(amount);

   cash -= amount;

   return true;

  }

  return false;

 }

 public boolean depositCash(Account account, double amount) {

  account.deposit(amount);

  cash += amount;

  return true;

 }

 public boolean validatePIN(int pin)

  return this.pin == pin;

 

}

public class Bank {

 public static void main(String[] args) {

  Account account = new Account("1234567890", 500.0);

  ATM atm = new ATM(1000.0, 1234);

  double balance = atm.checkBalance(account);

  System.out.printf("Account balance is $%.2f\n", balance);

  boolean pinValid = atm.validatePIN(1234);

  if (!pinValid) {

   System.out.println("Invalid PIN. Please try again.");

   System.exit(1);

  }

  boolean successful = atm.withdrawCash(account, 100.0);

  if (successful) {

   System.out.println("Withdrawal successful.");

  } else {

   System.out.println("Withdrawal failed.");

  }

  balance = atm.checkBalance(account);

  System.out.printf("Account balance is $%.2f\n", balance);

 }

}

在上述代码示例中,我们创建了三个类:Account、ATM和Bank。 Account类表示银行账户, ATM类表示ATM机,而Bank类是我们程序的主要入口点和驱动程序。

以下是关键词:

1. Java

2. ATM机

3. 代码案例

  
  

评论区

{{item['qq_nickname']}}
()
回复
回复