package shape;

public class Square extends AbstractShape {

	private double side;

	public Square(double side, Point center) {
		super(center);
		this.side = side;
	}

	public Square(double side) {
		this(side, new Point(0, 0));
	}

	public Square() {
		this(1.0);
	}

	public double getSide() {
		return this.side;
	}

	public void setSide(double side) {
		this.side = side;
	}

	@Override
	public double area() {
		double side = getSide();
		return side * side;
	}

	@Override
	public boolean equals(Object obj) {
		return obj instanceof Square
				&& this.getCenter().equals(((Square) obj).getCenter())
				&& this.getSide() == ((Square) obj).getSide();
	}

	@Override
	public String toString() {
		return "carré de centre de gravité " + this.getCenter()
				+ " et de côté " + this.getSide();
	}
}
