Answered step by step
Verified Expert Solution
Link Copied!

Question

1 Approved Answer

Part I: Create a new Java class named Pencil that has the following fields: color (String), brand(String), price (double) A pencil can have one of

Part I:
Create a new Java class named Pencil that has the following fields:
color (String), brand(String), price (double)
A pencil can have one of the following colors: Orange, Yellow, Brown, or Blue (all other colors are considered as invalid and default to Brown); The length of a band name is within the range of [3, 20]. The price of a pencil is limited to [$0.01, $200] (for all other prices, set the price to $0.50). The following rules are applied when a client program tries to set brand name:
Because the length of a brand name is limited to [3,20], if the length of a brand name is less than 3, you should repeat the brand name until it meets the length requirement. For example, if the brand name is "A", you are going to repeat it three times so it becomes "AAA", which meets the length requirement. If the length exceeds 20, your program should take the first 20 characters as its brand name.
Constructor - The constructor should accept the color, brand, price as arguments. These values should be used to initialize the pencil color, brand, and price. Getter Methods and setter methods for all instance variables.
toString method which returns info about the pencil in the following format:
PencilColor Brand unitPrice
Pencil color occupies 10 spaces(left aligned), brand name 20 spaces(right aligned), and unit price 10 spaces (hint: use String.format() method)
For example:
Black BIC $0.90
Part II:
Create a class named PencilBox. There are exactly 10 pencils in each PencileBox with two mixed colors (at your choice). The PencilBox has the following method:
Constructor(Pencil type1, int qty1, Pencil type 2, int qty2)
a method called totalCost which returns the total cost (total price of the pencils in a pencilBox)
toString method which returns the info about pencils in the box.
For example, there are 5 brown and 5 yellow color pencils in a pencilBox, the unit price for a brown color pencil is $0.90 and $0.80 for yellow ones. Then the toString method return a String as shown below:
Brown BIC $4.50
Black CIS201 $4.00
Each pencil box stores exactly 10 pencils. For all invalid quantities, your program should set 5 to each color, so altogether, there are 10 pencils in the pencil box.
No getter or setter methods are necessary for this PencilBox class.
Part III:
Write driver (tester) class named SchoolBag.java that uses your Pencil and PencilBox class:
1. create two pencil objects
2. create a PencilBox object that uses the pencil object created in step 1
3. printout th pencilBox as follows
Color Brand Subtotal
-------- --------- ----------
Brown BIC $4.50
Black CIS201 $4.00
--------------------------------------
Grand Total: $8.50

Step by Step Solution

There are 3 Steps involved in it

Step: 1

blur-text-image

Get Instant Access to Expert-Tailored Solutions

See step-by-step solutions with expert insights and AI powered tools for academic success

Step: 2

blur-text-image

Step: 3

blur-text-image

Ace Your Homework with AI

Get the answers you need in no time with our AI-driven, step-by-step assistance

Get Started

Recommended Textbook for

Database And Transaction Processing

Authors: Philip M. Lewis, Arthur Bernstein, Michael Kifer

1st Edition

0201708728, 978-0201708721

More Books

Students also viewed these Databases questions