Chat with us, powered by LiveChat CMIS 242 | Gen Paper
+1(978)310-4246 credencewriters@gmail.com
  

Assignment 3

GUI & Polymorphism

Before attempting this project, be sure you have completed all the reading assignments, non-
graded exercises, discussions, and assignments to date.

Design and implement Java program as follows:

1) Implement converter class hierarchy as follows:
a. Converter class which includes:

â–ª Private attribute for input of data type double
â–ª Default constructor with no parameter which sets input to Double.NaN

â–ª Overloaded constructor with input for parameter
â–ª Get and set methods for input attribute
â–ª Method convert() which returns input value

b. TemperatureConverter class which is a child of Converter and
includes:

â–ª Constructors which call parent constructors
â–ª Overridden convert() method to convert input (Fahrenheit temperature) to

Celsius and returns the value. If the instance has no input value, it should
return Double.NaN

â–ª Use the following formula for conversion: C = ((F-32)*5)/9
c. DistanceConverter class which is a child of Converter and
includes:

â–ª Constructors which call parent constructors
â–ª Overridden convert() method to convert input (distance in miles) to distance in

kilometers and returns the value. If the instance has no input value, it should
return Double.NaN

d. Use the following formula for conversion: KM = M * 1.609
2) Implement GUIConverter class using JFrame and JPanel as follows:

a. GUI will have 3 buttons: “Distance Converter”, “Temperature Converter”,
and “Exit”.

b. When user clicks Exit, the program will terminate

c. When user clicks Distance Converter, an input dialog will pop up where user can type

value and click OK:

d. Once user clicks OK, message dialog will pop up:

e. When user clicks on Temperature button, an input dialog will pop up to input value

and then when clicks OK, the message dialog with pop up with converted result:

f. SUGGESTIONS:
â–ª For the input dialog you can use JOptionPane.showInputDialog
â–ª The ActionListener for each Converter button should create the appropriate

Converter child instance, set the input, and call its convert() method
â–ª For the pop up with converted value you can use

JOptionPane.showMessageDialog

Style and Documentation:

Make sure your Java program is using the recommended style such as:
â–ª Javadoc comment up front with your name as author, date, and brief purpose of

the program

â–ª Comments for variables and blocks of code to describe major
functionality

â–ª Meaningful variable names and prompts
â–ª Class names are written in upper CamelCase

â–ª Constants are written in All Capitals
â–ª Use proper spacing and empty lines to make code human readable

Capture execution:
You should capture and label screen captures associated with compiling your code, and running
a passing and failing scenario for each functionality

Submission requirements

Deliverables include Java program (.java) and a single Word (or PDF) document. The Java
files should be named appropriately, and the Word/PDF file should be named as Assignment3.

The word (or PDF) document should include screen captures showing the successful compiling
and running of each of the test scenario. Test scenarios should include all required functionality

of the program. Each screen capture should be properly labeled clearly indicated what the

screen capture represents.

Submit your files to Assignment 3 submission area no later than the due date listed in
your online classroom.

Grading Rubric:

The following grading rubric will be used to determine your grade:

Attribute Level Level Level 0

(15-20 points) (5-15 points) (0 – 5 points)

The Converter class Correct or Mistakes in Missing or significantly

hierarchy almost correct implementation incorrect implementation

attributes and

inheritance

structure and

polymorphism

(overloading and

overriding)

Welcome screen Correct or Mistakes in Missing or significantly

with buttons almost correct implementation incorrect implementation

code to display

three buttons

Distance Converter Correct or Mistakes in Missing or significantly

almost correct implementation incorrect implementation

code for distance

converter button

Temperature Correct or Mistakes in Missing or significantly

Converter almost correct implementation incorrect implementation

code for

temperature

converter button

Program Correct or Mistakes or Missing or significantly

documentation and almost correct incomplete menu, incorrect menu, documentation

style, screen menu, program documentation and/or style, or screen captures

captures comments, and/or style, and

identifiers, and screen captures

screen captures

error: Content is protected !!