1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071 |
- /*
-
- Copyright (c) Xerox Corporation 1998-2002. All rights reserved.
-
- Use and copying of this software and preparation of derivative works based
- upon this software are permitted. Any distribution of this software or
- derivative works must comply with all applicable United States export control
- laws.
-
- This software is made available AS IS, and Xerox Corporation makes no warranty
- about the software, its performance or its conformity to any specification.
-
- |<--- this code is formatted to fit into 80 columns --->|
- |<--- this code is formatted to fit into 80 columns --->|
- |<--- this code is formatted to fit into 80 columns --->|
-
- */
-
- package tracing;
-
- /**
- *
- * Square is a 2D shape. It extends the TwoDShape class with the side
- * variable, and it implements TwoDShape's abstract methods for
- * correctly computing a square's area and distance.
- *
- */
- public class Square extends TwoDShape {
- protected double s; // side
-
- /*
- * All sorts of constructors
- */
- public Square(double x, double y, double s) {
- super(x, y); this.s = s;
- }
-
- public Square(double x, double y) {
- this(x, y, 1.0);
- }
-
- public Square(double s) {
- this(0.0, 0.0, s);
- }
-
- public Square() {
- this(0.0, 0.0, 1.0);
- }
-
- /**
- * Returns the perimeter of this square
- */
- public double perimeter() {
- return 4 * s;
- }
-
- /**
- * Returns the area of this square
- */
- public double area() {
- return s*s;
- }
-
- /**
- * This method overrides the one in the superclass. It adds some
- * circle-specific information.
- */
- public String toString() {
- return ("Square side = " + String.valueOf(s) + super.toString());
- }
- }
|