Skip to content

A simple ATM simulation in Java using OOP concepts. It includes PIN verification, balance check, deposit, and withdrawal features via command-line. Designed to practice Java basics like classes, methods, conditions, and user input.

Notifications You must be signed in to change notification settings

neha-dev-dot/ATM-Machine

Folders and files

NameName
Last commit message
Last commit date

Latest commit

Β 

History

6 Commits
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 

Repository files navigation

πŸ’³ ATM Machine Simulator in Java

This is a simple ATM machine simulation project written in Java as part of my Java learning journey. The project demonstrates fundamental OOP concepts and allows users to perform banking operations like checking balance, withdrawing, and depositing money through a command-line interface.


πŸš€ Features

  • βœ… PIN authentication system
  • πŸ’° Check account balance
  • πŸ’Έ Withdraw amount (with insufficient balance check)
  • πŸ’΅ Deposit amount
  • πŸ” Menu-driven interface with recursive navigation
  • 🧠 Basic error handling for invalid input

🧠 What I Learned

  • Java class & object creation
  • Scanner class for input
  • Conditional logic using if-else
  • Loops and method calls
  • Data encapsulation and class methods
  • Simple command-line menu system

🧾 Usage

  1. Compile the code:

    javac Main.java
    
  2. Run the program:

    java Main
    
  3. Default PIN is 5678. Use it to access the menu.

πŸ“‚ Project Structure

ATM-Machine :

  • Main.java # Main class to run the ATM app
  • ATM.java # ATM logic: check balance, deposit, withdraw, etc.

πŸ“Έ Output Sample

Enter Your PIN: 5678 Enter your choice:

  1. Check Balance
  2. Withdraw Amount
  3. Deposit Amount
  4. Exit

πŸ“š Future Enhancements

  1. Add real user authentication.
  2. Store data persistently (e.g., using files or database).
  3. Improve input validation.
  4. Use GUI with JavaFX or Swing

πŸ› οΈ Developed While Learning

This project was created while learning Java fundamentals, OOP principles, and CLI-based application development.

πŸ‘©β€πŸ’» Author Neha Bharti

About

A simple ATM simulation in Java using OOP concepts. It includes PIN verification, balance check, deposit, and withdrawal features via command-line. Designed to practice Java basics like classes, methods, conditions, and user input.

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Languages