Práctica 2. Jerarquia de Figuras: la clase abstracta Figura y sus

Anuncio
ESTRUCTURAS DE DATOS Y ALGORITMOS
Escuela Técnica Superior de Informática Aplicada
Curso 2004-2005
Práctica 2. Jerarquia de Figuras: la clase abstracta Figura y sus
derivadas: Circulo, Rectangulo y Cuadrado
Duración: 1 sesión
1.
Objetivo de la práctica
El objetivo de esta práctica es afianzar los conceptos y el uso de la herencia en Java, estudiados
en el tema 1 de la asignatura; en particular, se pretende que el alumno se familiarice con las ventajas
del uso de clases abstractas en presencia de herencia.
Esta práctica se realizará durante la semana del 25 al 29 de octubre para los grupos de semana A
y los dı́as 2 al 5 y 15 de noviembre para los grupos de la semana B.
2.
Descripción del problema a resolver
Se desea manipular figuras geométricas de distintos tipos y colores, por ejemplo un cı́rculo rojo,
un cuadrado verde, un rectángulo azul, etc. Además, se quiere caracterizar cada tipo de figura por los
siguientes elementos: el cı́rculo por su radio; el cuadrado por su lado y el rectángulo por su base y su
altura.
Las operaciones que se desea realizar sobre dichas figuras son las siguientes:
mostrar por pantalla las caracterı́sticas de una figura dada;
comprobar si una figura es de un tipo concreto;
consultar el color de una figura dada;
modificar el color de una figura dada;
consultar las caracterı́sticas propias de una figura dada, del cı́rculo su radio, del cuadrado su
lado, etc.
calcular el área de una figura dada;
calcular el perı́metro de una figura dada;
comprobar la igualdad entre dos figuras, con la definición de que dos figuras son iguales si tienen
el mismo tipo, color y área;
3.
Actividades en el laboratorio
Se pide desarrollar el proyecto BlueJ misFiguras con las clases necesarias para representar las
figuras geométricas según se ha enunciado en el apartado anterior; dicho proyecto se debe ubicar en
el directorio progJava.
Una vez se tengan las clases compiladas se deben probar todos los métodos desarrollados. Para
ello se deben crear en el entorno BlueJ objetos de las diferentes clases creadas y ejecutar sobre ellos
los métodos diseñados.
1
Descargar