In: Computer Science
1. Circle:
Implement a Java class with the name Circle. It should be in the package edu.gcccd.csis.
The class has two private instance variables: radius (of the type double) and color (of the type String).
The class also has a private static variable: numOfCircles (of the type long) which at all times will keep track of the number of Circle objects that were instantiated.
Construction:
A constructor that constructs a circle with the given color and sets the radius to a default value of 1.0.
A constructor that constructs a circle with the given, radius and color.
Once constructed, the value of the radius must be immutable (cannot be allowed to be modified)
Behaviors:
Accessor and Mutator aka Getter and Setter for the color attribute
Accessor for the radius.
getArea() and getCircumference() methods, hat return the area and circumference of this Circle in double.
Hint: use Math.PI (https://docs.oracle.com/javase/8/docs/api/java/lang/Math.html#PI (Links to an external site.))
2. Rectangle:
Implement a Java class with the name Rectangle. It should be in the package edu.gcccd.csis.
The class has two private instance variables: width and height (of the type double)
The class also has a private static variable: numOfRectangles (of the type long) which at all times will keep track of the number of Rectangle objects that were instantiated.
Construction:
A constructor that constructs a Rectangle with the given width and height.
A default constructor.
Behaviors:
Accessor and Mutator aka Getter and Setter for both member variables.
getArea() and getCircumference() methods, that return the area and circumference of this Rectangle in double.
a boolean method isSquare(), that returns true is this Rectangle is a square.
Hint: read the first 10 pages of Chapter 5 in your text.
3. Container
Implement a Java class with the name Container. It should be in the package edu.gcccd.csis.
The class has two private instance variables: rectangle of type Rectangle and circle of type Circle.
Construction:
No explicit constructors.
Behaviors:
Accessor and Mutator aka Getter and Setter for both member variables.
an integer method size(), that returns 0, if all member variables are null, 1 either of the two member variables contains a value other than null, and 2, if both, the rectangle and circle contain values other than null.
1.
CODE
package edu.gcccd.csis;
public class Circle {
private double radius;
private String color;
private static long numOfCircles = 0;
public Circle(String color) {
radius = 1.0;
this.color = color;
numOfCircles ++;
}
public Circle(double radius, String color) {
numOfCircles ++;
this.radius = radius;
this.color = color;
}
public String getColor() {
return color;
}
public void setColor(String color) {
this.color = color;
}
public double getRadius() {
return radius;
}
public double getArea() {
return Math.PI * radius * radius;
}
public double getCircumference() {
return 2 * Math.PI * radius;
}
}
2.
CODE
package edu.gcccd.csis;
public class Rectangle {
private double width, height;
private static long numOfRectangles = 0;
public Rectangle() {
numOfRectangles ++;
width = 0;
height = 0;
}
public Rectangle(double width, double height) {
numOfRectangles ++;
this.width = width;
this.height = height;
}
public double getWidth() {
return width;
}
public void setWidth(double width) {
this.width = width;
}
public double getHeight() {
return height;
}
public void setHeight(double height) {
this.height = height;
}
public static long getNumOfRectangles() {
return numOfRectangles;
}
public static void setNumOfRectangles(long numOfRectangles) {
Rectangle.numOfRectangles = numOfRectangles;
}
public double getArea() {
return width * height;
}
public double getCircumference() {
return 2 * (width + height);
}
public boolean isSquare() {
return width == height;
}
}
3.
Container.java
package edu.gcccd.csis;
public
class Container {
private Circle circle;
private Rectangle rectangle;
public Circle getCircle() {
return circle;
}
public void setCircle(Circle circle) {
this.circle = circle;
}
public Rectangle getRectangle() {
return rectangle;
}
public void setRectangle(Rectangle rectangle) {
this.rectangle = rectangle;
}
public int size() {
if (circle == null && rectangle == null) {
return 0;
}
if (circle == null || rectangle == null) {
return 1;
}
return 2;
}
}