Consider the Rectangle class below. Create a Square class that extends the Rectangle class (but do not modify the Rectangle class). Do not define any additional attributes in the Square class; use the ones inherited from Rectangle. The Square class must implement a two-argument constructor whose first argument is the width/height of the square, while the second argument is the square's name. The Square class must override the toString() method so that it creates a String representation of the Square such that the String returned on calling the method returns something like: "Square s1: width=2.50, area=6.25, perimeter=10.00".
Use the Driver class below the Rectangle class to test your implementation.
/** * This class represents a rectangle */ public class Rectangle { private double width; private double height; protected String name; /* * ctor - initializes the rectangle to the specified width and height */ public Rectangle(double width, double height, String name) { this.width = width; this.height = height; this.name = name; } /** * @return the width */ public double getWidth() { return width; } /** * @param width the width to set */ public void setWidth(double width) { this.width = width; } /** * @return the height */ public double getHeight() { return height; } /** * @param height the height to set */ public void setHeight(double height) { this.height = height; } /** * computes the perimeter of this rectangle * @return the perimeter */ public double computePerimeter() { return 2*width + 2*height; } /** * computes the area of this rectangle * @return the area */ public double computeArea() { return width * height; } /** * Create a String representation of this object */ public String toString() { String s = String.format("Rectangle %s: width=%#.2f, height=%#.2f, area=%#.2f, perimeter=%#.2f", name, width, height, computeArea(), computePerimeter()); return s; } } // This is the DriverApp class that tests the Rectangle and Square classes public class DriverApp { /** * @param args */ public static void main(String[] args) { Rectangle r1 = new Rectangle( 3, 2, "r1"); System.out.println(r1); Square s1 = new Square( 2.5, "s1"); System.out.println(s1); } }