Question
Define a Circle class that extends GeometricObject and contains: 1. Two double data fields named x and y that specify the centre of the circle
Define a Circle class that extends GeometricObject and contains:
1. Two double data fields named x and y that specify the centre of the circle with get methods.
2. A data field radius with a get method.
3. A no-arg constructor that creates a default circle with (0, 0) for (x, y) and 1 for radius.
4. A constructor that creates a circle with the specified x, y, and radius.
5. A method getArea() that returns the area of the circle.
6. A method getPerimeter() that returns the perimeter of the circle.
Use this code to base answer:
Coding: public abstract class GeometricObject { private String color = "white"; private boolean filled; private java.util.Date dateCreated; /** Construct a default geometric object */ protected GeometricObject() { dateCreated = new java.util.Date(); } /** Construct a geometric object with color and filled value */ protected GeometricObject(String color, boolean filled) { dateCreated = new java.util.Date(); this.color = color; this.filled = filled; } /** Return color */ public String getColor() { return color; } /** Set a new color */ public void setColor(String color) { this.color = color; } /** Return filled. Since filled is boolean, * the get method is named isFilled */ public boolean isFilled() { return filled; } /** Set a new filled */ public void setFilled(boolean filled) { this.filled = filled; } /** Get dateCreated */ public java.util.Date getDateCreated() { return dateCreated; } @Override public String toString() { return "created on " + dateCreated + " color: " + color + " and filled: " + filled; } /** Abstract method getArea */ public abstract double getArea(); /** Abstract method getPerimeter */ public abstract double getPerimeter(); } class Triangle extends GeometricObject { private double side1 = 1.0, side2 = 1.0, side3 = 1.0; /** Constructor */ public Triangle() { } /** Constructor */ public Triangle(double side1, double side2, double side3) { this.side1 = side1; this.side2 = side2; this.side3 = side3; } /** Override method findArea in GeometricObject */ public double getArea() { double s = (side1 + side2 + side3) / 2; return Math.sqrt(s * (s - side1) * (s - side2) * (s - side3)); } /** Override method findPerimeter in GeometricObject */ public double getPerimeter() { return side1 + side2 + side3; } /** Override the toString method */ public String toString() { // Implement it to return the three sides return "Triangle: side1 = " + side1 + " side2 = " + side2 + " side3 = " + side3; } } class Test { public static void main(String[] args) { GeometricObject gObjectArray [] = new GeometricObject [4]; //Complete your code here
} private static void printAreaAndPerimeter(GeometricObject gObject) { //Complete your code here
Step by Step Solution
There are 3 Steps involved in it
Step: 1
Get Instant Access to Expert-Tailored Solutions
See step-by-step solutions with expert insights and AI powered tools for academic success
Step: 2
Step: 3
Ace Your Homework with AI
Get the answers you need in no time with our AI-driven, step-by-step assistance
Get Started