Homework 3 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 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. 0 points Three constants named LOW, MEDIUM and HIGH with values of 1, 2 and 3 were not included. A private int data field named volume was not included. A private boolean data field named pluggedIn was not included. A private String data field named manufacturer was not included A private Color data field named headPhoneColor was not included. A private String data field named headPhoneModel was not included getter and setter methods for all data fields were not included. A no argument constructor was not included. 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 An IDE (Netbeans or Eclipse) was used for this assignment. A method named toString()was not included. A method named changeVolume(value) was not included. An IDE (Netbeans or Eclipse) was not used for this assignment. Test Headphone Class 5 points TestHeadPhone class was used to construct at least 3 HeadPhone objects. For each of the objects constructed, the use of each of the methods was demonstrated An IDE (Netbeans or Eclipse) was used for this assignment. 0 points TestHeadPhone class was not used to construct at least 3 HeadPhone objects. For each of the objects constructed, the use of each of the methods was not demonstrated An IDE (Netbeans or Eclipse) was not used for this assignment. Test Cases 5 points A minimum of 3 test cases was 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. 0 points No test cases were provided. Test cases were included in the supporting word or PDF documentation. Documentation and Style guide 5 points Screen captures were provided and labeled for compiling your code, and running each of your 3 test cases. 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. 0 points No documentation included Java style guide was not used to prepare the Java code.