Ejemplo Abstracta

public abstract class FiguraGeometrica {

	private int lados;

	public int getLados() {
		return lados;
	}

	public void setLados(int lados) {
		this.lados = lados;
	}
	
	public void yuju() {
		for(int i=0;i<10;i++) {
			System.out.println("¡YUJU!!");
		}
	}
	// Como un contrato en el que las clases derivadas
	// Se comprometen a implementarlos
	public abstract double perimetro();
	public abstract double area();
	
}

public class Cuadrado extends FiguraGeometrica {

	@Override
	public double perimetro() {
		// TODO Auto-generated method stub
		return 0;
	}

	@Override
	public double area() {
		// TODO Auto-generated method stub
		return 0;
	}

	

}


public class Rectangulo extends FiguraGeometrica {
	private double ancho;
	private double alto;

	public Rectangulo(double ancho, double alto) {
		this.ancho = ancho;
		this.alto = alto;
	}

	public Rectangulo(double ancho) {
		this(ancho,1);
	}

	public Rectangulo() {
		this(1);
	}

	public double getAncho() {
		return ancho;
	}

	public void setAncho(double ancho) {
		this.ancho = ancho;
	}

	public double getAlto() {
		return alto;
	}

	public void setAlto(double alto) {
		this.alto = alto;
	}

	public double perimetro() {
		return ancho * 2 + alto * 2;
	}

	public double area() {
		return ancho * alto;
	}

	public boolean oblongo() {
		return ancho > alto;
	}

}

Publicado por

Juan Pablo Fuentes

Formador de programación y bases de datos