public class PuntoPoli { private int x, y; public PuntoPoli() { y = x = 30; } public PuntoPoli(int px, int py) { x = px; y = py; } public float distancia() { System.out.println("EJECUTANDO LA FUNCION DISTANCIA DE PuntoPoli"); return (float) Math.sqrt(x * x + y * y); } public void izq(){ x=x-1; } public void der(){ x=x+1; } public void arr(){ y=y-1; } public void aba(){ y=y+1; } }
Crear la clase PuntoGordo, que heredará de la anterior. Además de las coordenadas, se debe almacenar su diámetro y se modificarán las funciones de movimiento del punto, para que en el caso del PuntoGordo, en vez de moverse de uno en uno, se muevan el tamaño del diámetro.
public class PuntoGordo extends PuntoPoli{ private int diametro; public PuntoGordo(int a, int b, int c) { super(a, b); diametro = c; } @Override public float distancia() { System.out.println("EJECUTANDO LA FUNCION DISTANCIA DE PuntoGordo"); return super.distancia() - diametro / 2.0f; } @Override public void izq(){ int i; for (i=0; i<diametro; i++) super.izq(); } @Override public void der(){ int i; for (i=0; i<diametro; i++) super.der(); } @Override public void arr(){ int i; for (i=0; i<diametro; i++) super.arr(); } @Override public void aba(){ int i; for (i=0; i<diametro; i++) super.aba(); } }
No hay comentarios:
Publicar un comentario