Before attempting this project, be sure you have completed all of the reading assignments, hands-on labs, discussions, and assignments to date.
(25 points) Design a Java class named Polygon that contains:
A private int data field named numSides that defines the number of sides of thepolygon. The default value should be 4. A private double data field named sideLength that defines the length of each side. The default value should be 10.0. A private double data field named xCoord that defines the x-coordinate of the center of the polygon. The default value should be 0.0. A private double data field named yCoord that defines the y-coordinate of the center of the polygon. The default value should be 0.0. A private double data field named apothem that defines the apothem of the polygon. The default value should 5.0. A private double data filed named perimeter that defines the perimeter of the polygon. The default value should 20.0. A no argument constructor that creates a Polygon using the default number of sides, default side length, default x- and y-coordinates, and the default apothem. A constructor that creates a Polygon using a specified number of sides, side length, xand y-coordinates and the apothem A getArea() method that returns a double value representing the area of the polygon. (Note the area of a regular Polgon can be calculated from ½ * Apothem*Perimeter) Getter and setter methods for all data fields A toString() method that displays the number of sides, side length, x-coordinate, ycoordinate and apothem values in String format
Be sure your code compiles.
Next, write a Java test program, named TestPolygon, to create five different polygons. When creating the five polygons, create one using the no argument constructor. For the remaining four, feel free to use any number of sides, side length and x-, and y-coordinates and apothem that are not equal to the default values and not equal to each other. For each of the five polygons, call all of the methods and display the results. For example for a Polygon with 3 sides, side length of 2.0 and xcoordinate and y-coordinates of 1.0, and apothem of 1.0 the following output may result:
toString() results: (numsides=3, sideLength=2.0,xcoord=1.0,ycoord=1.0, apothem=1.0)getNumSides() results: 3getSideLength() results: 2.0getXCoord() results: 1.0getYCoord() results: 1.0getApothem() results:1.0getPerimeter() results: 6.0getArea() results: 3.0setNumSides(4) results: 42setSideLength(3) results: 3.0setXCoord(2.0) results: 2.0setYCoord(2.0) results: 2.0setApothem(2.0) results:2.0
Keep in mind, for five Polygons, you will have five different output results. Also, note there is no requirement to actually draw a Polygon.