Description
Before attempting this project, be sure you have completed all of the reading assignments, hands-on labs, discussions, and assignments to date.
Create a Java class named HeadPhone to represent a headphone set. The class contains:
Three constants named LOW, MEDIUM and HIGH with values of 1, 2 and 3 to denote the headphone volume.
A private int data field named volume that specifies the volume of the headphone. The default volume is MEDIUM.
A private boolean data field named pluggedIn that specifies if the headphone is plugged in. The default value is false.
A private String data field named manufacturer that specifies the name of the manufacturer of the headphones.
A private Color data field named headPhoneColor that specifies the color of the headphones.
A private String data field named headPhoneModel that specifies the Model of the headphones.
getter and setter methods for all data fields.
A no argument constructor that creates a default headphone.
A method named toString() that returns a string describing the current field values of the headphones.
A method named changeVolume(value) that changes the volume of the headphone to the value passed into the method
Create a TestHeadPhone class that constructs at least 3 HeadPhone objects. For each of the objects constructed, demonstrate the use of each of the methods. Be sure to use your IDE to accomplish this assignment.
The google recommended Java style guide, provided as link in the week 2 content, should be used to format and document your code. Specifically, the following style guide attributes should be addressed:
Header comments include filename, author, date and brief purpose of the program. In-line comments used to describe major functionality of the code.
Meaningful variable names and prompts applied. Class names are written in UpperCamelCase.
Variable names are written in lowerCamelCase. Constant names are in written in All Capitals.
Braces use K&R style.
Submission requirements
Deliverables include all Java files (.java) and a single word (or PDF) document. The Java files should be named appropriately for your applications. The word (or PDF) document should include screen captures
showing the successful compiling and running of each of the test cases. Each screen capture should be properly labeled clearly indicated what the screen capture represents. The test cases table should be included in your word or PDF document and properly labeled as well.
Submit your files to the Homework 3 assignment area no later than the due date listed in your LEO classroom. You should include your name and HW3 in your word (or PDF) file submitted (e.g. firstnamelastnamehw3.docx or firstnamelastnamehw3.pdf)
Grading Rubric:
The following grading rubric will be used to determine your grade:
Attribute |
Meets |
Does not meet |
Headphone Class |
10 points |
0 points |
Three constants named LOW, |
Three constants named LOW, |
|
MEDIUM and HIGH with values |
MEDIUM and HIGH with values |
|
of 1, 2 and 3 to denote the |
of 1, 2 and 3 were not included. |
|
headphone volume |
||
A private int data field named |
||
A private int data field named |
volume was not included. |
|
volume that specifies the |
||
volume of the headphone. The |
A private boolean data field |
|
default volume is MEDIUM. |
named pluggedIn was not |
|
included. |
||
A private boolean data field |
||
named pluggedIn that specifies |
A private String data field |
|
if the headphone is plugged in. |
named manufacturer was not |
|
The default value is false. |
included |
|
A private String data field |
A private Color data field named |
|
named manufacturer that |
headPhoneColor was not |
|
specifies the name of the |
included. |
|
manufacturer of the |
||
headphones. |
A private String data field |
|
named headPhoneModel was |
||
A private Color data field named |
not included |
|
headPhoneColor that specifies |
||
the color of the headphones. |
getter and setter methods for |
|
all data fields were not |
||
A private String data field |
included. |
|
named headPhoneModel that |
||
specifies the Model of the |
A no argument constructor was |
|
headphones. |
not included. |
|
getter and setter methods for |
A method named toString()was |
|
all data fields. |
not included. |
|
A no argument constructor that |
A method named |
|
creates a default headphone. |
changeVolume(value) was not |
|
included. |
||
A method named toString() that |
||
returns a string describing the |
An IDE (Netbeans or Eclipse) |
|
current field values of the |
was not used for this |
|
headphones. |
assignment. |
|
A method named |
||
changeVolume(value) that |
||
changes the volume of the |
||
headphone to the value passed |
||
into the method |
||
An IDE (Netbeans or Eclipse) |
||
was used for this assignment. |
||
Test Headphone Class |
5 points |
0 points |
TestHeadPhone class was used |
TestHeadPhone class was not |
|
to construct at least 3 |
used to construct at least 3 |
|
HeadPhone objects. |
HeadPhone objects. |
|
For each of the objects |
For each of the objects |
|
constructed, the use of each of |
constructed, the use of each of |
|
the methods was demonstrated |
the methods was not |
|
demonstrated |
||
An IDE (Netbeans or Eclipse) |
||
was used for this assignment. |
An IDE (Netbeans or Eclipse) |
|
was not used for this |
||
assignment. |
||
Test Cases |
5 points |
0 points |
A minimum of 3 test cases was |
No test cases were provided. |
|
used in the form of table with |
||
columns indicating the input |
||
values, expected output, actual |
||
output and if the test case |
||
passed or failed. The table |
||
should contains 4 columns with |
||
appropriate labels and a row for |
||
each test case. |
||
Test cases were included in the |
||
supporting word or PDF |
||
documentation. |
||
Documentation and Style guide |
5 points |
0 points |
Screen captures were provided |
No documentation included |
|
and labeled for compiling your |
||
code, and running each of your |
Java style guide was not used to |
|
3 test cases. |
prepare the Java code. |
|
Header comments include |
||
filename, author, date and brief |
||
purpose of the program. |
||
In-line comments used to |
||
describe major functionality of |
||
the code. |
||
Meaningful variable names and |
||
prompts applied. |
||
Class names are written in |
||
UpperCamelCase. |
||
Variable names are written in |
||
lowerCamelCase. |
||
Constant names are in written |
||
in All Capitals. |
||
Braces use K&R style. |