Skip to content

RA7 - CEe

< volver a actividades

Empaquetar actividades

Empaqueta las actividades, dentro de la carpeta ut08, en la carpeta actividades/ce7e.

Actividad 11

paquete: A11_centrocomercial

Un centro comercial quiere mostrar cierta información sobre los televisores que vende. Los televisores pueden ser de dos tipos: de tubo o LCD. En concreto, de cada televisor le interesa mostrar:

  • marca (String).
  • modelo (String).
  • precio en euros.
  • pulgadas de la pantalla (double).
  • resolución: La resolución se mide de forma distinta en los televisores de tubo que en los televisores LCD.
  • En los TV de tubo se mide en lineas.
  • En los TV LCD se mide píxels horizontales x píxels verticales.

a) Diseñar la clase Televisor con los atributos y métodos comunes a los dos tipos de televisores y sus subclases TvTubo y TvLcd con los atributos y métodos que sea necesario:

  • Constructor de cada clase que permita inicializar todos los datos de la clase.
  • equals: dos televisiones son iguales si son de la misma marca y modelo.
  • compareTo: se considera menor (mayor) la de menor (mayor) marca. A igual marca, menor (mayor) la de menor (mayor) modelo.
  • public String resulucion(): devuelve un texto con la resolución del televisor, como por ejemplo "420 lineas" o "800 x 600 píxels" dependiendo del tipo de televisor.
  • public String toString(): devuelve un texto con la marca, modelo, precio, pulgadas y resolución.

b) Diseñar la clase TestTV para probar las clases diseñadas. Crear algunos objetos de las clases TvTubo y TvLcd y mostrarlos por pantalla.


Actividad 12

paquete: A12_vehiculos

Aconsejable: realizar el diseño UML antes de empezar a programar.

Debes crear varias clases para un software de una empresa de transporte. Implementa la jerarquía de clases necesaria para cumplir los siguientes criterios:

  • Los vehículos de la empresa de transporte pueden ser terrestres, acuáticos y aéreos. Los vehículos terrestres pueden ser coches y motos. Los vehículos acuáticos pueden ser barcos y submarinos. Los vehículos aéreos pueden ser aviones y helicópteros.
  • Todos los vehículos tienen matrícula y modelo (datos que no pueden cambiar). La matrícula de los coches terrestres deben estar formadas por 4 números y 3 letras. La de los vehículos acuáticos por entre 3 y 10 letras. La de los vehículos aéreos por 4 letras y 6 números.
  • Los vehículos terrestres tienen un número de ruedas (dato que no puede cambiar).
  • Los vehículos acuáticos tienen eslora (dato que no puede cambiar).
  • Los vehículos aéreos tienen un número de asientos (dato que no puede cambiar).
  • Los coches pueden tener aire acondicionado o no tenerlo.
  • Las motos tienen un color.
  • Los barcos pueden tener motor o no tenerlo.
  • Los submarinos tienen una profundidad máxima.
  • Los aviones tienen un tiempo máximo de vuelo.
  • Los helicópteros tienen un número de hélices.
  • No se permiten vehículos genéricos, es decir, no se deben poder instanciar objetos que sean vehículos sin más. Pero debe ser posible instanciar vehículos terrestres, acuáticos o aéreos genéricos (es decir, que no sean coches, motos, barcos, submarinos, aviones o helicópteros).
  • El diseño debe obligar a que todas las clases de vehículos tengan un método imprimir() que imprima por pantalla la información del vehículo en una sola línea.

Implementa todas las clases necesarias con: atributos, constructor con parámetros, getters/setters y el método imprimir. Utiliza abstracción y herencia de la forma más apropiada.

Implementa también una clase Programa para hacer algunas pruebas: Instancia varios vehículos de todo tipo (coches, motos, barcos, submarinos, aviones y helicópteros) así como vehículos genericos (terrestres, acuáticos y aéreos). Crea un ArrayList y añade todos los vehículos. Recorre la lista y llama al método imprimir de todos los vehículos.


Actividad 13

Gestión de Biblioteca

  1. Crear una jerarquía de clases para gestionar una biblioteca:
  2. Superclase Publicacion con atributos titulo, autor, año.
  3. Subclases Libro y Revista. Libro tendrá un atributo isbn y Revista un atributo numeroEdicion.
  4. Crear una clase Biblioteca que contenga una lista de publicaciones y permita añadir, eliminar y buscar publicaciones.
  5. Implementar una clase TestBiblioteca que pruebe todas las funcionalidades de la biblioteca utilizando las clases heredadas.

< volver a actividades