Create an abstract class “Shape” with the following specifications:
An abstract
Create an abstract class “Shape” with the following specifications:
An abstract method “surface_area ()” of return type double
An abstract method “volume()” of return type double
Put your code in a Java source file named “Shape.java.”
I.
Create a class “Sphere” that extends the Shape class with the following specifications:
Attributes:
Radius
Constructor:
Implement a parameterized constructor needed to initialize the data.
toString:
Implement a “toString” method that prints out the surface area and volume.
Implement methods to compute the surface area and volume.
II.
Create a class “Cylinder” that extends the Shape class with the following specifications:
Attributes:
Radius, height – both of type double
Constructor:
Implement a parameterized constructor to initialize the data.
toString:
Implement a “toString” method that prints out the surface area and volume.
Implement methods to compute the surface area and volume.
III.
Create a class “Cone” that extends the Shape class with the following specifications:
Attributes:
Radius, height – both of type double
Constructor:
Implement a parameterized constructor to initialize the data.
toString:
Implement a “toString” method that prints out the surface area and volume.
Implement methods to compute the surface area and volume.
IV.
Create a driver class named “ShapeArray” with the following specifications:
Instantiate one sphere.
Instantiate one cylinder.
Instantiate one cone.
Store the class instances into an array named “shapeArray.”
Loop through the array and print out the instance data of each object using the object instance’s “toString” method.
Show a Unified Modeling Language (UML) diagram of your project.
Condense your source files and UML diagram as a zipped folder and submit the zipped file as your critical thinking assignment (CTA).
Students must use appropriate version control for all programmatic assignments created. GIT repositories should be established and screen captures of repositories submitted with each assignment.