Skip to content

Java based smart banking management system built using OOP concepts with GUI support.

Notifications You must be signed in to change notification settings

anasuddin1/Student-Banking-Management-System

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

3 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Student Banking Management System

Java-based smart banking management system built using OOP concepts with GUI support.


🏦 Smart Banking Management System

Hey there! 👋
This is a Smart Banking Management System that I built individually using Java and core Object-Oriented Programming (OOP) principles.

As a student, I noticed that most banking simulations are either too basic or purely text-based. I wanted to challenge myself by building something that feels more modern, gives users the freedom to choose their account type, and handles real banking logic in a structured way.


🌟 Why I Built This Project

I built this project to push myself beyond simple console programs and explore how real-world systems are designed.

My main goals were:

  • Bridging the Gap: Designing a system that supports fully digital account creation
  • Learning OOP: Applying inheritance and polymorphism to manage different card tiers
  • Visual Learning: Creating a GUI-based application instead of a plain terminal program

This project helped me understand how backend logic and user interfaces work together.


🚀 Key Features

  • Digital Onboarding: Create a bank account and receive an account number instantly
  • Card Tiers: Student, Silver, Gold, and Premium accounts with different daily limits
  • Secure Access: PIN-based authentication for every login
  • Real-time Transactions: Deposit, withdraw, and transfer money between accounts
  • Transaction History: All activities are recorded and can be reviewed

🛠️ Tech Stack

  • Language: Java
  • Concepts: Object-Oriented Programming
    • Abstraction
    • Inheritance
    • Encapsulation
    • Polymorphism
  • UI/UX: Java Swing / AWT
  • Tools: VS Code / IntelliJ IDEA, Git

🏗️ Class Architecture

BankSystem

Acts as the main controller that manages all user accounts and transactions.

Account (Abstract Class)

Contains common account logic shared by all account types.

StudentAccount / SilverAccount / GoldAccount / PremiumAccount

Subclasses that define specific withdrawal limits and behaviors.

Transaction

Records deposits, withdrawals, and transfers for transaction history.


👨‍💻 How to Run the Project

  1. Clone the repository:

    git clone [your-repo-link]
  2. Compile the main file: javac SmartBankSystem.java

  3. Run the application: java SmartBankSystem

📚 Learning Outcome

This project strengthened my understanding of Java, OOP design, and GUI-based application development. It also helped me think more logically about how real banking systems manage users, security, and transactions.

About

Java based smart banking management system built using OOP concepts with GUI support.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages