Skip to content

Latest commit

 

History

History
78 lines (50 loc) · 1.66 KB

File metadata and controls

78 lines (50 loc) · 1.66 KB

💳 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