GithubHelp home page GithubHelp logo

epicestudar / digital_bank Goto Github PK

View Code? Open in Web Editor NEW
6.0 1.0 1.0 11 KB

digital bank made with Java GUI

Java 100.00%
bank banking-applications oriented-object-programming digital-bank java java-gui-application javafx

digital_bank's Introduction

Report on the Banking System Project

Introduction

This Java project aims to create a visual banking system using JOptionPane for user interaction. The system allows users to register, access their accounts, make withdrawals, deposits, and request loans. It also utilizes inheritance and superclasses to manage account information.

Main Challenges

During the development of this project, I encountered several challenges:

  1. Graphical User Interface (GUI): Implementing a user-friendly GUI using JOptionPane for account registration and operations was a significant challenge. Ensuring that the interface was intuitive and easy to navigate required careful design.

  2. Account Creation Logic: Designing the logic to create different types of accounts (Individual and Business) based on user input presented its own set of challenges. Handling user input and validating it for account creation was crucial.

  3. Account Access and Operations: Allowing users to access their accounts, perform transactions like withdrawals, deposits, and loan requests while ensuring the security of sensitive information required careful planning.

Project Explanation

Class: Person

This class represents a person with attributes such as name, age, cpf, and cnpj (tax identification numbers). It contains basic getters and setters for these attributes.

Class: Account

This class extends Person and represents an account. It includes attributes like balance, code (account code), accountType (account type), password (account password), and loan (loan amount). The methods within this class allow for account creation, access, withdrawals, deposits, and loan requests.

Class: Main

The Main class orchestrates the entire program. It manages user interactions, allowing them to create accounts, search for existing accounts, and perform operations like viewing account information and making transactions.

Banking System Functionalities

  1. Account Creation:

    • Users are prompted to enter their age and select an account type (Individual or Business).
    • Depending on the selection, the user may need to provide additional information like CPF or CNPJ.
  2. Account Access:

    • Users can search for existing accounts by providing the account name.
    • Once found, users can perform operations like withdrawals, deposits, and loan requests.
  3. Withdrawals:

    • Users can withdraw a specified amount, provided that the account balance is sufficient.
  4. Deposits:

    • Users can deposit a specified amount into their account.
  5. Loan Requests:

    • Users can request a loan, subject to certain limits and conditions.

Conclusion

This banking system project provided a practical application of Java programming principles, emphasizing object-oriented principles, user interface design, and inheritance. It required careful consideration of user interactions, security measures, and account management.

The project successfully achieved its objectives, and future improvements may involve enhanced user authentication, transaction history, and additional security features.


Note: The code presented has been summarized for documentation purposes and may contain omitted sections for brevity.

digital_bank's People

Contributors

epicestudar avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar

Forkers

rezaajanih

digital_bank's Issues

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.