
Big Java Late Objects
2nd Edition
ISBN: 9781119330455
Author: Horstmann
Publisher: WILEY
expand_more
expand_more
format_list_bulleted
Question
Chapter 12, Problem 6PE
Program Plan Intro
Modified implementation of the classes in the ATM simulation
Program plan:
- In the file “BankAccount.java”, create a class “BankAccount”,
- Declare the variable.
- Define the constructor to create a bank account with “0” balance.
- Define the parameterized constructor to create a bank account with a given balance.
- Define the method “deposit()” to credit amount into the bank account.
- Define the method “withdraw()” to debit amount from the bank account.
- Define the method “getBalance()” to get the current balance of the bank account.
- In the file “Customer.java”, create a class “Customer”,
- Define the constructor to construct a customer with a given number and PIN.
- Define the method “match()” to check if this customer matches a customer number and PIN.
- Define the method “getCheckingAccount()” to get the checking account of this customer .
- Define the method “getSavingsAccount()” to get the savings account of this customer.
- In the file “Bank.java”, import necessary packages, and create a class “Bank”,
- Declare the necessary array lists.
- Define the constructor to construct a bank with no customers and no accounts.
- Define the method “readCustomers()” to read the customer numbers and pins and initializes the bank accounts.
- Define the method “findCustomer()” to find a customer in the bank.
- In the file “ATM.java”, create a class “ATM”,
- Declare and initialize necessary variables.
- Define the constructor to construct an ATM for a given bank.
- Define the method “reset()” to reset the ATM to the initial state.
- Define the method “setCustomerNumber()” to set the current customer number and sets state to PIN.
- Define the method “selectCustomer()” to find customer in bank. If found sets state to ACCOUNT, else to START.
- Define the method “selectAccount()” to set current account to checking or savings. Set state to TRANSACT.
- Define the method “withdraw()” to withdraw amount from current account.
- Define the method “deposit()” to deposit amount to current account.
- Define the method “getBalance()” to get the balance of the current account.
- Define the method “back()” to moves back to the previous state.
- Define the method “getState()” to get the current state of this ATM.
- In the file “ATMSimulator.java”, import necessary packages, and create a class “ATMSimulator”,
- Define the method “main()”,
- Execute “try” statement to handle exception if any,
- Crate an object for “Bank”.
- Call the method “readCustomers” to read the input file.
- Create “ATM” object.
- Catch and handle the exception if any.
- Create “Scanner” class.
- Execute the following or true,
- If it is START state, get the customer number.
- Otherwise, If it is PIN state, get the pin.
- Otherwise, if it is ACCOUNT state, get the type of account.
- Otherwise, if it is TRANSAC state, perform the type of transaction.
- Execute “try” statement to handle exception if any,
- Define the method “main()”,
Expert Solution & Answer

Want to see the full answer?
Check out a sample textbook solution
Students have asked these similar questions
MGMT SS STATS, an umbrella body that facilitates and serves various Social SecurityOrganizations/Departments within the Caribbean territories, stoodpoised to meet the needs of its stakeholders by launching an onlinedatabase at www.SSDCI.gov. The database will provide membersand the public access to the complete set of services that can (also)be initiated face-to-face, and it will provide managed, private, secure access to a repository ofpublic and/or personal information. Ideally, the database will have basic details of pensionplans recorded in the registry, member plan statistics, and cash inflows and outflows frompension funds.For example, insured persons accumulate contributions. Records for these persons will includeinformation on the insured persons able to acquire various benefits once work is interrupteddue to sickness, death, retirement, and maternity or employment injury. They will also includeinformation on pensions such as invalidity, disability, and survivors that stem from…
(c) Consider the following set of processes:
Process ID
Arrival Time Priority
Burst Time
A
2
3
100
B
6
C
10
1 (highest)
2
40
80
D
16
4 (lowest)
20
(3c) In the following resource allocation graph, is the state a deadlocked one? If so
which ones are deadlocked? (3 points)
Resource allocation graph. R₁ = Resource, P = process.
R1
R3
R3
7
Chapter 12 Solutions
Big Java Late Objects
Ch. 12.1 - Prob. 1SCCh. 12.1 - Prob. 2SCCh. 12.1 - Prob. 3SCCh. 12.1 - Prob. 4SCCh. 12.1 - Prob. 5SCCh. 12.2 - Prob. 6SCCh. 12.2 - Prob. 7SCCh. 12.2 - Prob. 8SCCh. 12.2 - Prob. 9SCCh. 12.2 - Prob. 10SC
Ch. 12.2 - Prob. 11SCCh. 12.2 - Prob. 12SCCh. 12.3 - Prob. 13SCCh. 12.3 - Prob. 14SCCh. 12 - Prob. 1RECh. 12 - Prob. 2RECh. 12 - Prob. 3RECh. 12 - Prob. 4RECh. 12 - Prob. 5RECh. 12 - Prob. 6RECh. 12 - Prob. 7RECh. 12 - Prob. 8RECh. 12 - Prob. 9RECh. 12 - Prob. 10RECh. 12 - Prob. 11RECh. 12 - Prob. 12RECh. 12 - Prob. 13RECh. 12 - Prob. 14RECh. 12 - Prob. 15RECh. 12 - Prob. 1PECh. 12 - Prob. 2PECh. 12 - Prob. 3PECh. 12 - Prob. 4PECh. 12 - Prob. 5PECh. 12 - Prob. 6PECh. 12 - Prob. 1PPCh. 12 - Prob. 2PPCh. 12 - Prob. 3PPCh. 12 - Prob. 4PPCh. 12 - Prob. 5PPCh. 12 - Prob. 6PPCh. 12 - Prob. 7PPCh. 12 - Prob. 8PPCh. 12 - Prob. 9PPCh. 12 - Prob. 10PP
Knowledge Booster
Similar questions
- What resources are used when a thread is created? How do these differ from those used when a process is created?arrow_forward(c) Consider the following set of processes: Process ID Arrival Time Priority Burst Time A 2 3 100 B 6 C 10 1 (highest) 2 40 80 D 16 4 (lowest) 20arrow_forward(3e) Test-and-Set. The Test-and-Set instruction is used in hardware to achieve synchronization. It can be defined in the following way: function Test-and-Set (var target: boolean): boolean; begin Test-and-Set:= target; target := true; end; Now show how the Test-and-Set instruction can be used to protect a critical region and hence achieve mutual exclusion (do not worry about satisfying the bounded waiting condition). (8 points) repeatarrow_forward
- Consider a system with three smoker processes and one agent process. Each smoker continuously rolls a cigarette and then smokes it. But to roll and smoke a cigarette, the smoker needs three ingredients: tobacco, paper and matches. One of the smoker processes has paper, another has tobacco and the third has the matches. The agent has an infinite supply of all three materials. The agent places two of the ingredients on the table. The smoker who has the remaining ingredient then makes and smokes a cigarette, signaling the agent on completion. The agent then puts out another two of the three ingredients, and the cycle repeats. Given below is a solution to the Cigarette-Smokers Problem. Give initial conditions for the semaphores as well as plausible values for the variables i & j and r & s, such that the agent and smokers are synchronized. Write a couple of sentences on why these initial conditions are necessary and sufficient. Solution: var a: array [0..2] of semaphore (initial condition =…arrow_forwardLevel-0 Diagram for this: A customer sends in an order form containing details of their order and their membership number. A check is made to verify that they are a member. When their order is verified, a check is made to validate that the items ordered are produced by the company. Next, the valid order is used to update the daily order file, and then used to create a shipping list and invoice, which are sent on to the Order Fulfilment System.arrow_forwardIn this assignment, you will use all of the graphics commands you have learned to create an animated scene. Your program should have a clear theme and tell a story. You may pick any school-appropriate theme that you like. The program must include a minimum of: 5 circles 5 polygons 5 line commands 2 for loops 1 global variable You may wish to use the standard code for simplegui graphics below: import simplegui def draw_handler(canvas): frame = simplegui.create_frame('Testing', 600, 600) frame.set_canvas_background("Black") frame.set_draw_handler(draw_handler) frame.start() Submit Your Code After you write your code here in the programming environment, you will check it and submit it as usual. However, the grader will only perform basic checks against some requirements. If your code passes, you should submit your work, and your teacher will manually grade your submitted work using a rubric.arrow_forward
- 1. What is the difference between a relative cell reference and an absolute cell reference and give an example of when you would use each.arrow_forwardWhat is the goal of using a chart in excel, and how is a chart useful and what is the goal of using sparklines in excel, and how are sparklines useful?arrow_forwardProve for each pair of expression f(n) and g(n) whether f(n) is big O, little o Ω,ω or Θ of g(n). Use limits to find these. For each case it is possible that more than one of these conditions is satisfied:1. f(n) =log(n2^n), g(n) = log(sqrt(n)2^(n^2))2. f(n) =nsqrt(n) +log(n^n), g(n) =n + sqrt(n)lognarrow_forward
- Need this expression solved for mu. This can be done using a symbolic toolbox, however it needs to end up being mu = function (theta, m, L, g). If using MATLAB or something similar, run the code to make sure it works.arrow_forwardA business case scenario and asked to formulate an appropriate software design solution. Theyshould complete the case and upload the solution. will be required to read the case,identify and document the key issues, problems, and opportunities presented, and then design,and develop an appropriate integrated design solution to the problem. mustdemonstrate good spreadsheet, database, analytical, and word-processing skills whendeveloping solutions. Additionally, must be creative and demonstrate synthesising andapplying Database Management and Data Analytics Principles learned in the course. They willalso need to research some aspects of the assessment. CASE BACKGROUNDMGMT SS STATS, an umbrella body that facilitates and serves various Social SecurityOrganizations/Departments within the Caribbean territories, stoodpoised to meet the needs of its stakeholders by launching an onlinedatabase at www.SSDCI.gov. The database will provide membersand the public access to the complete set of…arrow_forwardA business case scenario and asked to formulate an appropriate software design solution. Theyshould complete the case and upload the solution. will be required to read the case,identify and document the key issues, problems, and opportunities presented, and then design,and develop an appropriate integrated design solution to the problem. mustdemonstrate good spreadsheet, database, analytical, and word-processing skills whendeveloping solutions. Additionally, must be creative and demonstrate synthesising andapplying Database Management and Data Analytics Principles learned in the course. They willalso need to research some aspects of the assessment. CASE BACKGROUNDMGMT SS STATS, an umbrella body that facilitates and serves various Social SecurityOrganizations/Departments within the Caribbean territories, stoodpoised to meet the needs of its stakeholders by launching an onlinedatabase at www.SSDCI.gov. The database will provide membersand the public access to the complete set of…arrow_forward
arrow_back_ios
SEE MORE QUESTIONS
arrow_forward_ios
Recommended textbooks for you
- Database System ConceptsComputer ScienceISBN:9780078022159Author:Abraham Silberschatz Professor, Henry F. Korth, S. SudarshanPublisher:McGraw-Hill EducationStarting Out with Python (4th Edition)Computer ScienceISBN:9780134444321Author:Tony GaddisPublisher:PEARSONDigital Fundamentals (11th Edition)Computer ScienceISBN:9780132737968Author:Thomas L. FloydPublisher:PEARSON
- C How to Program (8th Edition)Computer ScienceISBN:9780133976892Author:Paul J. Deitel, Harvey DeitelPublisher:PEARSONDatabase Systems: Design, Implementation, & Manag...Computer ScienceISBN:9781337627900Author:Carlos Coronel, Steven MorrisPublisher:Cengage LearningProgrammable Logic ControllersComputer ScienceISBN:9780073373843Author:Frank D. PetruzellaPublisher:McGraw-Hill Education

Database System Concepts
Computer Science
ISBN:9780078022159
Author:Abraham Silberschatz Professor, Henry F. Korth, S. Sudarshan
Publisher:McGraw-Hill Education

Starting Out with Python (4th Edition)
Computer Science
ISBN:9780134444321
Author:Tony Gaddis
Publisher:PEARSON

Digital Fundamentals (11th Edition)
Computer Science
ISBN:9780132737968
Author:Thomas L. Floyd
Publisher:PEARSON

C How to Program (8th Edition)
Computer Science
ISBN:9780133976892
Author:Paul J. Deitel, Harvey Deitel
Publisher:PEARSON

Database Systems: Design, Implementation, & Manag...
Computer Science
ISBN:9781337627900
Author:Carlos Coronel, Steven Morris
Publisher:Cengage Learning

Programmable Logic Controllers
Computer Science
ISBN:9780073373843
Author:Frank D. Petruzella
Publisher:McGraw-Hill Education