Instructions
Objective
Write a java assignment program to implement shapes and colors.
Requirements and Specifications

Source Code
CIRCLE
public class Circle extends Shape {
	private double radius;
	// Default constructor
	public Circle() {
	super(); // calling the super-class default constructor initializes the color to 'green'
	radius = 1.0;
	}
	// Overloaded constructor
	public Circle(double rad, String col) {
	super(col); // call super-class constructor with the given color
	setRadius(rad);
	}
	// getters and setters
	public double getRadius() {return radius;}
	public void setRadius(double new_radius) {
	if(new_radius < 0) // if the given radius is negative, set it to 1.0 
	{
	new_radius = 1.0;
	}
	radius = new_radius;
	}
	// methods
	public double getArea() {
	return Math.PI*Math.pow(getRadius(), 2);
	}
	@Override
	public String toString() {
	return String.format("A Circle with radius=%.2f, which is a subclass of %s", getRadius(), super.toString());
	}
	}
	
DRIVER
public class Driver {
	public static void main(String[] args) throws Exception {
	// Create a red Circle with radius -1
	Circle circle = new Circle(-1, "red");
	// If we print it, it should display a radius of 1.0 not -1
	System.out.println("This circle is " + circle.getColor()); // print color
	System.out.println(circle.toString());
	System.out.println(String.format("Area: %.2f", circle.getArea()));
	System.out.println("");
	// Create a yellow circle of radius 2
	circle = new Circle(2.0, "yellow");
	System.out.println("This circle is " + circle.getColor()); // print color
	System.out.println(circle.toString());
	System.out.println(String.format("Area: %.2f", circle.getArea())); 
	System.out.println("");
	// Rectangles
	// Create a rectangle with width = 5 and length = 2
	Rectangle rect = new Rectangle(5.0,2.0,"black");
	System.out.println(rect.toString());
	System.out.println(String.format("Area: %.2f", rect.getArea())); 
	System.out.println("");
	// Create a rectangle with negative values. Both its width and length should be setted to 1
	rect = new Rectangle(-100, -500, "white");
	System.out.println(rect.toString());
	System.out.println("");
	}
	}
	
RECTANGLE
import java.lang.ref.WeakReference;
	import javax.sql.rowset.WebRowSet;
	public class Rectangle extends Shape {
	private double width;
	private double length;
	// No-arg constrcutor
	public Rectangle() {
	super();
	width = 1.0;
	length = 1.0;
	}
	// Overloaded constructor
	public Rectangle(double w, double l, String col) {
	super(col);
	setWidth(w);
	setLength(l);
	}
	// getters and setters
	public double getWidth() {
	return width;
	}
	public void setWidth(double w) {
	if(w < 0.0) {
	w = 1.0;
	}
	width = w;
	}
	public double getLength() {
	return length;
	}
	public void setLength(double l) {
	if(l < 0.0) {
	l = 1.0;
	}
	length = l;
	}
	// methods
	public double getArea() {return getWidth()*getLength();}
	@Override
	public String toString(){
	return String.format("A Rectangle with width=%.2f and length=%.2f, which is a subclass of %s", getWidth(), getLength(), super.toString());
	}
	}
	
SHAPE
public class Shape 
	{
	protected String color;
	// default constructor
	public Shape() {
	color = "green";
	}
	// Overloaded constructor
	public Shape(String col) {
	color = col;
	}
	// getter and setter
	public void setColor(String new_color) { color = new_color;}
	public String getColor() {return color;}
	// toString
	@Override
	public String toString() {
	return "A Shape with color " + getColor();
	}
	} 
Similar Samples
Welcome to ProgrammingHomeworkHelp.com, your trusted partner for all programming assignments. We offer expert assistance in languages like C++, Python, Java, and more. With a team of experienced programmers, we deliver precise solutions tailored to your requirements. Whether you're a student or a professional, count on us for reliable, on-time delivery and top-notch quality. Excelling in programming has never been easier—explore our services today!
Java
Java
Java
Java
Java
Java
Java
Java
Java
Java
Java
Java
Java
Java
Java
Java
Java
Java
Java
Java