Answered step by step
Verified Expert Solution
Question
1 Approved Answer
Object - oriented programming Aissginment:Command Line Bank Application Objective: Design and implement a command line application for a bank that manages different types of accounts
Objectoriented programming Aissginment:Command Line Bank Application Objective: Design and implement a command line application for a bank that manages different types of accounts Savings Account and Current Account customers, and transactions. The application should utilize objectoriented programming principles and store data persistently in files.
Requirements:
Account Types:
Create a class Account that has attributes such as account number, balance, and customer associated with them.
The Account class should have methods for deposit, withdrawal, and checking balance.
Implement two subclasses of Account: SavingAccount and CurrentAccount.
Saving Account has in addition to the data field of Account a class variable interestRate and a function addMonthlyInterest that will add the monthly interest for that Account.
CurrentAccount has in addition to the data field of Account a data field overdrawLimit.
Customer:
Implement a Customer class to store customer information such as name, address, contact details, and a list of accounts associated with them.
Ensure that a customer can have multiple accounts both Savings and Current
Transaction:
Implement a Transaction class to track transactions made on accounts.
Each transaction should include details such as transaction ID timestamp, account
involved, transaction type deposit or withdrawal and amount.
File Handling:
Implement file handling to persistently store account and customer data.
Use text files to store SavingAccount and CurrentAccount information, customer details including yourself and transaction history. Create these data files and put
some records in them.
Ensure that the application can read data from files at startup and update files after any changes eg new account creation, transaction recording
Command Line Interface:
Develop a command line interface CLI for interacting with the bank application.
Include options for creating customers, creating accounts, making transactions,
checking balances, and viewing transaction history.
Ensure the CLI provides clear instructions and error messages for users.
Error Handling:
Implement robust error handling mechanisms to handle invalid inputs, insufficient balances, file readwrite errors, etc.
Provide informative error messages to guide users in case of errors.
Documentation:
Provide documentation explaining the functionality of each class, method, and file structure.
Include instructions on how to run the application and interact with the command line interface.
Step by Step Solution
There are 3 Steps involved in it
Step: 1
Get Instant Access to Expert-Tailored Solutions
See step-by-step solutions with expert insights and AI powered tools for academic success
Step: 2
Step: 3
Ace Your Homework with AI
Get the answers you need in no time with our AI-driven, step-by-step assistance
Get Started