
Big Java Late Objects
2nd Edition
ISBN: 9781119330455
Author: Horstmann
Publisher: WILEY
expand_more
expand_more
format_list_bulleted
Question
Chapter 20, Problem 6PP
Program Plan Intro
Implementation of a Graphical User Interface (GUI)
Program plan:
- In a file “BankAccount.java”, create a class “BankAccount”,
- Declare the necessary variables.
- Define the constructor to create a bank account with “0” balance.
- Define the constructor to create a bank account with a specified balance.
- Define the method “getAccountNumber()” to return the account number.
- Define the method “deposit()” deposit the amount into the bank account.
- Define the method “withdraw()” to debit the amount from the bank account.
- Define the method “getBalance()” to return the bank balance.
- In a file “BankData.java”, import the packages and create a class “BankData”,
- Declare the object variable.
- Define the constructor to create a “BankData” object.
- Define the method “open()” to open the data file.
- Define the method “size()” to return the number of accounts in the file.
- Define the method “close()” to close the data file..
- Define the method “read()” to read the savings account records.
- Define the method “find()” to search the position of a bank account with a given number.
- Define the method “write()” to write the savings account record to the data file.
- In a file “BankSimulatorFrame.java”, import necessary packages, and create a class “BankSimulatorFrame”,
- Declare and initialize the necessary static variables.
- Declare the necessary variables.
- Define the constructor,
- Create an object for “BankData”.
- Call the method “setLayout()”.
- Call the method “add()” to add the various panel.
- Call the method “setSize()” to set the frame size.
- Define the method “createLoadPanel()”,
- Create a panel.
- Create a button “Load”.
- Add the button into the panel.
- Create Listener class for the button,
-
- Define the method “actionPerformed()”,
- Create “JFileChooser” object.
- Check the condition for the file chooser,
- Execute try statement,
- Open the file
- Enable the buttons.
- Catch if exception occurs.
- Execute try statement,
- Check the condition for the file chooser,
- Create “JFileChooser” object.
- Define the method “actionPerformed()”,
- Call the action listener method.
- Return the panel.
- Define the panel method “createFindPanel()”,
- Create a panel.
- Create a button “Find”.
- Disable the button.
- Add the button into the panel.
- Create a button “add”.
- Disable the button.
- Add the button into the panel.
- Create text field.
- Add the text field into the panel.
- Create a listener class for the buttons,
-
- Define the method “actionPerformed()”,
- Execute try statement,
- Get the account number.
- Search the position of the account number.
- Check the condition,
- Display the message.
- Disable the button.
- Otherwise,
- Read the current position.
- Set the text for the label.
- Enable the button.
- Catch if “IOException” exception occurs.
- Catch if “NumberFormatException” exception occurs.
- Execute try statement,
- Define the method “actionPerformed()”,
- Call the listener method.
- Create a class for button listener,
-
- Define the method “actionPerformed()”,
- Get the account number.
- Search the position.
- Check the condition,
- Get the size.
- Create a new account.
- Call the method “write()”.
- Otherwise,
- Display the message.
- Read the current position.
- Set the text.
- Enable the button.
- Catch if “IOException” exception occurs.
- Catch if “NumberFormatException” exception occurs.
- Define the method “actionPerformed()”,
- Call the method action listener method.
- Returns the panel.
- Define the method “createBalancePanel()”,
- Create a panel.
- Create empty label.
- Add the label into the panel.
- Return the panel.
- Define the method “createDepositPanel()”,
- Create a panel.
- Create a button “Deposit”.
- Create and add the label into the panel.
- Create and add the text field into the panel.
- Add the button into the panel.
- Create a listener class for the buttons,
-
- Define the method “actionPerformed()”,
- Execute try statement,
- Get the amount.
- Call the method “deposit()”.
- Call the method “write()”.
- Set the text.
- Enable the button.
- Catch if “IOException” exception occurs.
- Catch if “NumberFormatException” exception occurs.
- Execute try statement,
- Define the method “actionPerformed()”,
- Call the listener method.
- Returns the panel.
- Define the method “createLoadPanel()”,
- In a file “BankSimulatorViewer.java”, import necessary packages, and create a class “BankSimulatorViewer”,
- Define the “main()” method.
- Create “BankSimulatorFrame” object.
- Call the method to define the frame operation.
- Set the frame’s title.
- Make the frame visible.
- Define the “main()” method.
Expert Solution & Answer

Want to see the full answer?
Check out a sample textbook solution
Students have asked these similar questions
Tracing the Recursion.
Tracing the Recursion. Observe the recursive solution provided below.
1. Which line(s) of this program define(s) the base case of sumOfDigits() method?
2. Which line(s) of this program include recursive call(s)?
3. Trace the recursion below. You must show the trace step by step; otherwise – little
to no credit!
4. Show me the final result!
1 public class SumOfDigitsCalculator {
30
123456
7%
8
public static void main(String[] args) {
System.out.println(sumOfDigits(1234));
}
public static int sumOfDigits (int number) {
if (number == 0)
9
10
11
12
}
13 }
else
return 0;
return number % 10 + sumOfDigits (number / 10);
module : java 731
Question3: (30 MARKS) Passenger Rail Agency for South Africa Train Scheduling System Problem Statement Design and implement a train scheduling system for Prasa railway network. The system should handle the following functionalities: 1. Scheduling trains: Allow the addition of train schedules, ensuring that no two trains use the same platform at the same time at any station. 2. Dynamic updates: Enable adding new train schedules and canceling existing ones. 3. Real-time simulation: Use multithreading to simulate the operation of trains (e.g., arriving, departing). 4. Data management: Use ArrayList to manage train schedules and platform assignments. Requirements 1. Add Train Schedule, Cancel Scheduled Train, View Train Schedules and Platform Management 2. Concurrency Handling with Multithreading i.e Use threads to simulate train operations,…
please answer my 2 java questions correctly , include all comments etc and layout and structure must be correct , follow the requirements
Chapter 20 Solutions
Big Java Late Objects
Ch. 20.1 - Prob. 1SCCh. 20.1 - Prob. 2SCCh. 20.2 - Prob. 3SCCh. 20.2 - Prob. 4SCCh. 20.2 - Prob. 5SCCh. 20.3 - Prob. 6SCCh. 20.3 - Prob. 7SCCh. 20.4 - Prob. 8SCCh. 20.4 - Prob. 9SCCh. 20.5 - Prob. 10SC
Ch. 20.5 - Prob. 11SCCh. 20.5 - Prob. 12SCCh. 20.5 - Prob. 13SCCh. 20.5 - Prob. 14SCCh. 20 - Prob. 1RECh. 20 - Prob. 2RECh. 20 - Prob. 3RECh. 20 - Prob. 4RECh. 20 - Prob. 5RECh. 20 - Prob. 6RECh. 20 - Prob. 7RECh. 20 - Prob. 8RECh. 20 - Prob. 9RECh. 20 - Prob. 10RECh. 20 - Prob. 11RECh. 20 - Prob. 12RECh. 20 - Prob. 13RECh. 20 - Prob. 14RECh. 20 - Prob. 15RECh. 20 - Prob. 16RECh. 20 - Prob. 1PECh. 20 - Prob. 2PECh. 20 - Prob. 3PECh. 20 - Prob. 4PECh. 20 - Prob. 5PECh. 20 - Prob. 6PECh. 20 - Prob. 7PECh. 20 - Prob. 8PECh. 20 - Prob. 9PECh. 20 - Prob. 10PECh. 20 - Prob. 1PPCh. 20 - Prob. 2PPCh. 20 - Prob. 3PPCh. 20 - Prob. 4PPCh. 20 - Prob. 5PPCh. 20 - Prob. 6PPCh. 20 - Prob. 7PPCh. 20 - Prob. 8PPCh. 20 - Prob. 9PPCh. 20 - Prob. 10PPCh. 20 - Prob. 11PPCh. 20 - Prob. 12PPCh. 20 - Prob. 13PPCh. 20 - Prob. 14PP
Knowledge Booster
Similar questions
- Question3: Passenger Rail Agency for South Africa Train Scheduling System Problem Statement (30 MARKS) Design and implement a train scheduling system for Prasa railway network. The system should handle the following functionalities: 1. Scheduling trains: Allow the addition of train schedules, ensuring that no two trains use the same platform at the same time at any station. 2. Dynamic updates: Enable adding new train schedules and canceling existing ones. 3. Real-time simulation: Use multithreading to simulate the operation of trains (e.g., arriving, departing). 4. Data management: Use ArrayList to manage train schedules and platform assignments. Requirements 1. Add Train Schedule, Cancel Scheduled Train, View Train Schedules and Platform Management 2. Concurrency Handling with Multithreading i.e Use threads to simulate train operations, Each train runs as a separate thread, simulating its arrival, departure, and travel status. 3. Use ArrayList to manage train schedules for each…arrow_forwardplease answer my java question correctly , include all comments etc and layout and structure must be correct , follow the requirementsarrow_forwardplease answer my java question correctly , include all comments etc and layout and structure must be correct , follow the requirementsarrow_forward
- please answer my java question correctly , follow all requirements , add all commets etc and layout and structure must be perfect tooarrow_forwardplease answer my java question correctly , include all comments etc and layout and structure must be correct , follow the requirementsarrow_forward7. Long-Distance CallsA long-distance provider charges the following rates for telephone calls: Rate Category Rate per MinuteDaytime (6:00 a.m. through 5:59 p.m.) $0.07Evening (6:00 p.m. through 11:59 p.m.) $0.12Off-Peak (midnight through 5:59 a.m.) $0.05Write a GUI application that allows the user to select a rate category (from a set of radio buttons), and enter the number of minutes of the call into an Entry widget. An info dialog box should display the charge for the call.arrow_forward
- Name and Address The Name and Address Problem Write a GUI program that displays your name and address when a button is clicked. The program’s window should appear as the sketch on the left side of Figure 13-61 when it runs. When the user clicks the Show Info button, the program should display your name and address, as shown in the sketch on the right of the figure.arrow_forwardExercise 1 Function and Structure [30 pts] Please debug the following program and answer the following questions. There is a cycle in a linked list if some node in the list can be reached again by continuously following the next pointer. #include typedef struct node { int value; struct node *next; } node; int 11_has_cycle (node *first) if (first == node *head = { NULL) return 0; first; while (head->next != NULL) { } if (head first) { return 1; } head = head->next; return 0; void test ll_has_cycle () { int i; node nodes [6]; for (i = 0; i < 6; i++) { nodes [i] .next = NULL; nodes [i].value = i; } nodes [0] .next = &nodes [1]; nodes [1] .next = &nodes [2]; nodes [2] .next = &nodes [3]; nodes [3] .next nodes [4] .next &nodes [4]; NULL; nodes [5] .next = &nodes [0]; printf("1. Checking first list for cycles. \n Function 11_has_cycle says it has s cycle\n\n", 11_has_cycle (&nodes [0])?"a":"no"); printf("2. Checking length-zero list for cycles. \n Function 11_has_cycle says it has %s…arrow_forwardhow to read log logsarrow_forward
- Discrete Mathematics for Computer Engineeringarrow_forwardQuestion 1 - Array Iterators Like the JS on A2, there is no visual component to this question. The HTML really just needs to load the JavaScript, everything else will output to the console. The JS file should the completion of the task, and all necessary testing, so that just loading the file will complete the task with enough different inputs to ensure it works. Even Numbers [3 marks] Create a function that determines if a provided number is even. Define an array of numbers, then on the array use the appropriate array iterator to determine if the array contains only even numbers using the function you defined. Output the results, and test with several arrays. Long Names [3 marks] Define an array of names. Use an iterator to retrieve a new array containing only the names longer then 12 characters. Your iterator should be passed an anonymous arrow function. Test with several different arrays First Names [3 marks] Define an array called fullNames that contains 7 javascript objects of…arrow_forwardDiscrete Mathematics for Computer Engineeringarrow_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