0% found this document useful (0 votes)
18 views

BankingSystem_java

The document outlines a Java banking application with classes for managing bank accounts and banking operations. It includes functionalities for creating accounts, depositing, withdrawing, transferring money, and displaying account details. The application uses a console interface for user interactions and manages multiple accounts through a BankManager class.
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as DOCX, PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
18 views

BankingSystem_java

The document outlines a Java banking application with classes for managing bank accounts and banking operations. It includes functionalities for creating accounts, depositing, withdrawing, transferring money, and displaying account details. The application uses a console interface for user interactions and manages multiple accounts through a BankManager class.
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as DOCX, PDF, TXT or read online on Scribd
You are on page 1/ 7

import java.util.

ArrayList;

import java.util.List;

import java.util.Scanner;

// BankAccount class

class BankAccount {

private String accountNumber;

private String accountHolder;

private double balance;

// Constructor

public BankAccount(String accountNumber, String accountHolder) { // Fixed comma between


parameters

this.accountNumber = accountNumber;

this.accountHolder = accountHolder;

this.balance = 0.0; // Initial balance is set to 0.0

// Deposit money into the account

public void deposit(double amount) {

if (amount > 0) {

balance += amount;

System.out.println("Amount deposited successfully. Current Balance: " + balance);

} else {

System.out.println("Invalid amount. Please enter a positive number.");

// Withdraw money from the account

public void withdraw(double amount) {

if (amount <= 0) {
System.out.println("Invalid amount. Please enter a positive number.");

} else if (amount > balance) {

System.out.println("Insufficient balance. Transaction failed.");

} else {

balance -= amount;

System.out.println("Amount withdrawn successfully. Remaining Balance: " + balance);

// Transfer money to another bank account

public void transfer(BankAccount otherAccount, double amount) { // Fixed comma between


parameters

if (amount <= balance) {

this.withdraw(amount); // Withdraw from this account

otherAccount.deposit(amount); // Deposit into the other account

System.out.println("Transfer successful. New Balance: " + this.balance);

} else {

System.out.println("Insufficient balance. Transfer failed.");

// Display account details

public void displayAccountDetails() {

System.out.println("Account Number: " + accountNumber + " Account Holder: " +


accountHolder + " Balance: " + balance);

// Getters and Setters

public String getAccountNumber() { return accountNumber; }

public void setAccountNumber(String accountNumber) { this.accountNumber = accountNumber; }

public String getAccountHolder() { return accountHolder; }

public void setAccountHolder(String accountHolder) { this.accountHolder = accountHolder; }


public double getBalance() { return balance; }

// BankManager class

class BankManager {

private List<BankAccount> accounts = new ArrayList<>();

// Create a new bank account

public void createAccount(String accountNumber, String accountHolder) { // Fixed comma


between parameters

BankAccount newAccount = new BankAccount(accountNumber, accountHolder);

accounts.add(newAccount);

System.out.println("New account created for " + accountHolder + " with Account Number: " +
accountNumber);

// Find an account by account number

private BankAccount findAccount(String accountNumber) {

for (BankAccount account : accounts) {

if (account.getAccountNumber().equals(accountNumber)) {

return account;

return null;

// Deposit money into an account

public void depositToAccount(String accountNumber, double amount) { // Fixed comma between


parameters

BankAccount account = findAccount(accountNumber);

if (account != null) {

account.deposit(amount);
} else {

System.out.println("Account not found.");

// Withdraw money from an account

public void withdrawFromAccount(String accountNumber, double amount) { // Fixed comma


between parameters

BankAccount account = findAccount(accountNumber);

if (account != null) {

account.withdraw(amount);

} else {

System.out.println("Account not found.");

// Transfer money between two accounts

public void transferBetweenAccounts(String fromAccountNumber, String toAccountNumber,


double amount) { // Fixed commas between parameters

BankAccount fromAccount = findAccount(fromAccountNumber);

BankAccount toAccount = findAccount(toAccountNumber);

if (fromAccount != null && toAccount != null) {

fromAccount.transfer(toAccount, amount);

} else {

System.out.println("One or both accounts not found.");

// Display details for all accounts

public void displayAllAccounts() {

for (BankAccount account : accounts) {

account.displayAccountDetails();
}

// Main class

public class BankingApplication {

private static BankManager manager = new BankManager();

public static void main(String[] args) {

startBanking(); // Start the banking operations

public static void startBanking() {

Scanner scanner = new Scanner(System.in);

while (true) {

System.out.println("\\nWelcome to the Banking Application");

System.out.println("1. Create New Account");

System.out.println("2. Deposit Money");

System.out.println("3. Withdraw Money");

System.out.println("4. Transfer Money");

System.out.println("5. Display Account Details");

System.out.println("6. Exit");

System.out.print("Enter your choice: ");

int choice = scanner.nextInt();

scanner.nextLine(); // Consume newline

switch (choice) {

case 1:
createAccountUI(scanner);

break;

case 2:

depositUI(scanner);

break;

case 3:

withdrawUI(scanner);

break;

case 4:

transferUI(scanner);

break;

case 5:

manager.displayAllAccounts();

break;

case 6:

System.out.println("Thank you for using the Banking Application.");

return;

default:

System.out.println("Invalid choice. Please choose again.");

private static void createAccountUI(Scanner scanner) {

System.out.print("Enter Account Number: ");

String accountNumber = scanner.nextLine();

System.out.print("Enter Account Holder Name: ");

String accountHolder = scanner.nextLine();

manager.createAccount(accountNumber, accountHolder); // Fixed commas

}
private static void depositUI(Scanner scanner) {

System.out.print("Enter Account Number: ");

String accountNumber = scanner.nextLine();

System.out.print("Enter Amount to Deposit: ");

double amount = scanner.nextDouble();

scanner.nextLine(); // Consume newline

manager.depositToAccount(accountNumber, amount); // Fixed commas

private static void withdrawUI(Scanner scanner) {

System.out.print("Enter Account Number: ");

String accountNumber = scanner.nextLine();

System.out.print("Enter Amount to Withdraw: ");

double amount = scanner.nextDouble();

scanner.nextLine(); // Consume newline

manager.withdrawFromAccount(accountNumber, amount); // Fixed commas

private static void transferUI(Scanner scanner) {

System.out.print("Enter From Account Number: ");

String fromAccount = scanner.nextLine();

System.out.print("Enter To Account Number: ");

String toAccount = scanner.nextLine();

System.out.print("Enter Amount to Transfer: ");

double amount = scanner.nextDouble();

scanner.nextLine(); // Consume newline

manager.transferBetweenAccounts(fromAccount, toAccount, amount); // Fixed commas

You might also like