Big Java, Binder Ready Version: Early Objects
6th Edition
ISBN: 9781119056447
Author: Cay S. Horstmann
Publisher: WILEY
expand_more
expand_more
format_list_bulleted
Question
Chapter 25, Problem 5PP
Program Plan Intro
Invoice Builder
Program plan:
Filename: “LineItem.java”
This program file is used to define a class “LineItem”. In the code,
- Define a class “LineItem”.
- Declare the class members “quantity” and “theProduct”.
- Define the constructor “LineItem()”.
- Initialize “quantity”.
- Initialize “theProduct”.
- Define a method “getTotalPrice()”,
- Return the price.
- Define a method “format()”,
- Return the value in string format
- Define a method “getQuantity()”,
- Return the value of “quantity”.
- Define a method “getProduct()”,
- Return the value of “theProduct”.
Filename: “Product.java”
This program file is used to define a class “Product”. In the code,
- Define a class “Product”.
- Declare the class members “description” and “price”.
- Define the constructor “Product()”.
- Initialize “description”.
- Initialize “price”.
- Define a method “getDescription()”,
- Return the “description”.
- Define a method “getPrice()”,
- Return the “price”.
Filename: “Address.java”
This program file is used to define a class “Address”. In the code,
- Define a class “Address”.
- Declare the class members “name”, “street”, “city”, “state” and “zip”.
- Define the constructor “Address()”.
- Initialize “name”.
- Initialize “street”.
- Initialize “city”.
- Initialize “state”.
- Initialize “zip”.
- Define a method “format()”,
- Return the value in string format
- Define a method “getName()”,
- Return the value of “name”.
- Define a method “getStreet()”,
- Return the value of “street”.
- Define a method “getCity()”,
- Return the value of “city”.
- Define a method “getState()”,
- Return the value of “state”.
- Define a method “getZip()”,
- Return the value of “zip”.
Filename: “Invoice.java”
This program file is used to define a class “Invoice”. In the code,
- Define a class “Invoice”.
- Declare the class members “billingAddress”, “shippingAddress” and “items”.
- Define the constructor “Invoice()”.
- Set “items”.
- Initialize “billingAddress”.
- Initialize “shippingAddress”.
- Define a method “add()”,
- Define the object of “LineItem” called “anItem”.
- Add item using “add()” method.
- Define a method “getBillingAddress()”,
- Return the value of “billingAddress”.
- Define a method “getShippingAddress()”,
- Return the value of “shippingAddress”.
- Define a method “getItems()”,
- Return the value of “items”.
- Define a method “format()”,
- Declare a string variable “r” and set its value.
- Iterate a “for” loop,
- set the value of “r”.
- Set the value of “r” to a string format.
- Return the value of “r”.
- set the value of “r”.
- Define a method “getAmountDue()”,
- Declare a variable “amountDue”.
- Iterate a “for” loop,
- Set the value of “amountDue”.
- Return the value of “amountDue”.
- Set the value of “amountDue”.
Filename: “InvoiceBuilder.java”
This program file is used to define a class “InvoiceBuilder”. In the code,
- Define a class “InvoiceBuilder”.
- Declare the class members “builder” and “doc”.
- Define the constructor “InvoiceBuilder()”.
- Create an object “factory” of class “DocumentBuilderFactory”.
- Set “builder”.
- Initialize “items”.
- Define a method “build()”,
- Set “doc”.
- Create an object “root” of “Element”.
- Add “root” to “doc”.
- Return the “doc”.
- Define a method “createInvoice()”,
- Create an element “invoiceElement” for invoice.
- Create an element “sAddressElement”.
- Create an element “bAddressElement”.
- Create an element “itemsElement”.
- Append “sAddressElement” to “invoiceElement”.
- Append “bAddressElement” to “invoiceElement”.
- Append “itemsElement” to “invoiceElement”.
- Define a method “createInvoice()”,
- Create an element “addressElement” for address.
- Create a text node “nameText”.
- Create an element “nameElement” for name.
- Append “nameText” to “nameElement”.
- Create a text node “streetText”.
- Create an element “streetElement” for street.
- Append “streetText” to “streetElement”.
- Create a text node “cityText”.
- Create an element “cityElement” for city.
- Append “cityText” to “cityElement”.
- Create a text node “stateText”.
- Create an element “stateElement” for state.
- Append “stateText” to “stateElement”.
- Create a text node “zipText”.
- Create an element “zipElement” for zip.
- Append “zipText” to “zipElement”.
- Append “nameElement” to “addressElement”.
- Append “streetElement” to “addressElement”.
- Append “cityElement” to “addressElement”.
- Append “stateElement” to “addressElement”.
- Append “zipElement” to “addressElement”.
- Return the value of “addressElement”.
- Define a method “createItemList()”,
- Create an element “itemsElement” for items.
- Iterate a “for” loop,
- Create an object “itemElement”.
- Append “itemElement” to “itemsElement”.
- Return the value of “itemsElement”.
- Define a method “createItem()”,
- Create an element “itemElement” for item.
- Create an element “productElement”.
- Create a text node “quantityText”.
- Create an element “quantityElement”.
- Append “quantityElement” to “quantityText”.
- Append “itemElement” to “productElement”.
- Append “itemElement” to “quantityElement”.
- Define a method “createProduct()”,
- Create a text node “descriptionText”.
- Create a text node “priceText”.
- Create an element “descriptionElement” for description.
- Create an element “priceElement” for price.
- Append “descriptionText” to “descriptionElement”.
- Append “priceText” to “priceElement”.
- Create an element “productElement” for product.
- Append “descriptionElement” to “productElement”.
- Append “priceElement” to “productElement”.
- Return “productElement”.
Filename: “InvoiceBuilderDemo.java”
This program file is used to define a class “InvoiceBuilderDemo”. In the code,
- Import the required packages.
- Define a class “InvoiceBuilderDemo”.
- Define the method “main()”.
- Define the object “samsShipToAddress” of class “Address”.
- Define the object “samsBillToAddress” of class “Address”.
- Define the object “samsInvoice” of class “Invoice”.
- Add the products using “add()” method.
- Define the object “builder” of class “InvoiceBuilder”.
- Define the DOM elements.
- Define a variable “out”.
- Print the variable “out”.
- Define the method “main()”.
Expert Solution & Answer
Want to see the full answer?
Check out a sample textbook solutionStudents have asked these similar questions
True or False: Given the sets F and G with F being an element of G, is it always ture that P(F) is an element of P(G)? (P(F) and P(G) mean power sets). Why?
Can you please simplify (the domain is not empty) ∃xF (x) → ¬∃x(F (x) ∨ ¬G(x)). Fo
HistogramUse par(mfrow=c(2,2)) and output 4 plots with different argument settings.
Chapter 25 Solutions
Big Java, Binder Ready Version: Early Objects
Ch. 25.1 - Prob. 1SCCh. 25.1 - Prob. 2SCCh. 25.1 - Prob. 3SCCh. 25.2 - Prob. 4SCCh. 25.2 - Prob. 5SCCh. 25.3 - Prob. 6SCCh. 25.3 - Prob. 7SCCh. 25.4 - Prob. 8SCCh. 25.4 - Prob. 9SCCh. 25.4 - Prob. 10SC
Ch. 25 - Prob. 1RECh. 25 - Prob. 2RECh. 25 - Prob. 3RECh. 25 - Prob. 4RECh. 25 - Prob. 5RECh. 25 - Prob. 6RECh. 25 - Prob. 7RECh. 25 - Prob. 8RECh. 25 - Prob. 9RECh. 25 - Prob. 10RECh. 25 - Prob. 11RECh. 25 - Prob. 12RECh. 25 - Prob. 13RECh. 25 - Prob. 14RECh. 25 - Prob. 15RECh. 25 - Prob. 16RECh. 25 - Prob. 17RECh. 25 - Prob. 18RECh. 25 - Prob. 1PECh. 25 - Prob. 2PECh. 25 - Prob. 3PECh. 25 - Prob. 4PECh. 25 - Prob. 5PECh. 25 - Prob. 6PECh. 25 - Prob. 1PPCh. 25 - Prob. 2PPCh. 25 - Prob. 3PPCh. 25 - Prob. 4PPCh. 25 - Prob. 5PPCh. 25 - Prob. 6PPCh. 25 - Prob. 7PPCh. 25 - Prob. 8PPCh. 25 - Prob. 9PPCh. 25 - Prob. 10PPCh. 25 - Prob. 11PPCh. 25 - Prob. 12PP
Knowledge Booster
Similar questions
- (use R language)Scatter plot(a). Run the R code example, and look at the help file for plot() function. Try different values for arguments:type, pch, lty, lwd, col(b). Use par(mfrow=c(3,2)) and output 6 plots with different argument settings.arrow_forward1. Draw flow charts for each of the following;a) A system that reads three numbers and prints the value of the largest number.b) A system reads an employee name (NAME), overtime hours worked (OVERTIME), hours absent(ABSENT) and determines the bonus payment (PAYMENT).arrow_forwardScenario You work for a small company that exports artisan chocolate. Although you measure your products in kilograms, you often get orders in both pounds and ounces. You have decided that rather than have to look up conversions all the time, you could use Python code to take inputs to make conversions between the different units of measurement. You will write three blocks of code. The first will convert kilograms to pounds and ounces. The second will convert pounds to kilograms and ounces. The third will convert ounces to kilograms and pounds. The conversions are as follows: 1 kilogram = 35.274 ounces 1 kilogram = 2.20462 pounds 1 pound = 0.453592 kilograms 1 pound = 16 ounces 1 ounce = 0.0283 kilograms 1 ounce = 0.0625 pounds For the purposes of this activity the template for a function has been provided. You have not yet covered functions in the course, but they are a way of reusing code. Like a Python script, a function can have zero or more parameters. In the code window you…arrow_forward
- make a screen capture showing the StegExpose resultsarrow_forwardWhich of the following is not one of the recommended criteria for strategic objectives? Multiple Choice a) realistic b) appropriate c) sustainable d) measurablearrow_forwardManagement innovations such as total quality, benchmarking, and business process reengineering always lead to sustainable competitive advantage because everyone else is doing them. a) True b) Falsearrow_forward
- Vision statements are more specific than strategic objectives. a) True b) Falsearrow_forwardThe three components of the __________ approach to corporate accounting include financial, environmental, and social performance measures. Multiple Choice a) stakeholder b) triple dimension c) triple bottom line d) triple efficiencyarrow_forwardCompetitors, as internal stakeholders, should be included in the stakeholder management consideration of a company and in its mission statement. a) True b) Falsearrow_forward
- At what level in the organization should the strategic management perspective be emphasized? Multiple Choice a) throughout the organization b) from the bottom up in an organization c) at the top of the organization d) at the middle of the organizationarrow_forwardA good manager can be flexible when it comes to sticking to the original plan; to get good results, the intended strategy has to become the realized strategy. a) True b) Falsearrow_forward________ tend to be quite enduring and seldom change. Multiple Choice a) Strategic objectives b) Vision statements c) Strategic plans d) Mission statementsarrow_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