Académique Documents
Professionnel Documents
Culture Documents
Mecanismo de Herencia
TEMA: Mecanismo de herencia entre clases
Implementación del mecanismo de herencia en la solución de problemas
OBJETIVOS:
prácticos en lenguaje java.
Descripción de la Actividad
Crear una aplicación en java que de solución a cada uno de los problemas propuestos.
Recomendaciones:
Para dar solución a cada problema planteado, identificar las clases requeridas,
sus métodos, atributos, y sus relaciones.
Para cada ejercicio se debe construir su modelo estático de clases – “Diagrama
de clases”, con una herramienta apropiada, excepto Word.
Cada estudiante del curso, deberá montar en su web site una carpeta
comprimida con los problemas solucionados y sus respectivos diagramas de
clases, la carpeta debe llamarse “Actividad 9 – mecanismo de herencia en java”.
El código fuente a desarrolla debe cumplir con las sugerencias vistas en clases,
es decir, las clases deben estar comentadas, debe ser código con identacion, y
se deben respetar las reglas para dar nombre a las variables, clases y métodos.
Deben asegurarse que cada código fuente ejecutable, no presente errores de
sintaxis.
Problemas propuestos
Las características comunes que se almacenan tanto para las revistas como para
los libros son el código, el título, y el año de publicación y si estén o no prestado.
Estas tres características se pasan por parámetro en el momento de crear los
objetos.
Tanto las revistas como los libros deben tener (aparte de los constructores) un
método toString() que devuelve el valor de todos los atributos en una cadena de
caracteres.
2. Escribe una clase Multimedia para almacenar información de los objetos de tipo
multimedia (películas, discos, mp3,mp4…). Esta clase contiene título, autor, formato,
y duración como atributos. El formato puede ser uno de los siguientes: wav, mp3,
midi, avi, mov, mpg, cdAudio y dvd. El valor de todos los atributos se pasa por
parámetro en el momento de crear el objeto. Esta clase tiene además, un método
para devolver cada uno de los atributos y un método toString() que devuelve la
información del objeto. Por último, un método equals() que recibe un objeto de tipo
Multimedia y devuelve true en caso de que el título y el autor sean iguales y false en
caso contrario.
4. Hay tres tipos de productos congelados: congelados por aire, congelados por agua y
congelados por nitrógeno. Los productos congelados por aire deben llevar la
información de la composición del aire con que fue congelado (% de nitrógeno, % de
oxígeno, % de dióxido de carbono y % de vapor de agua). Los productos
congelados por agua deben llevar la información de la salinidad del agua con que se
realizó la congelación en gramos de sal por litro de agua. Los productos congelados
por nitrógeno deben llevar la información del método de congelación empleado y del
tiempo de exposición al nitrógeno expresada en segundos.
Crear una clase testHerencia3 con el método main donde se creen: dos productos
frescos, tres productos refrigerados y cinco productos congelados (2 de ellos
congelados por agua, otros 2 por aire y 1 por nitrógeno). Mostrar la información de
cada producto por pantalla.
Crear una superclase llamada Car. La clase Car tiene los siguientes campos y
métodos.
int speed;
double regularPrice;
String color;
double getSalePrice();
Crear una subclase de Car y llamarla Truck. La clase Truck tiene los siguientes
campos y métodos.
int weight;
double getSalePrice(); // If weight > 2000, 10% discount. Otherwise, 20% discount.
Crear una subclase de Car y llamarla Ford. La clase Ford tiene los siguientes
campos y métodos
int year;
int manufacturerDiscount;
double getSalePrice(); // al precio de venta calculado de la clase Car class, restar
manufacturerDiscount.
Crear una subclase de Car y llamarla Sedan. La clase Sedan tiene los siguientes
campos y métodos.
int length;
double getSalePrice(); // If length > 20 feet, 5% discount, Otherwise, 10% discount.
Empleado
Atributos:
- nombre: tipo cadena (Debe ser nombre y apellido)
- cedula: tipo cadena
- edad : entero (Rango entre 18 y 45 años)
- casado: boolean
- salario: tipo numérico doble
Métodos:
- Constructor con y sin parámetros de entrada
- Método que permita mostrar la clasificación según la edad de acuerdo al siguiente
algoritmo:
Si edad es menor o igual a 21, Principiante
Si edad es >=22 y <=35, Intermedio
Si edad es >35, Senior.-
- Imprimir los datos del empleado por pantalla (utilizar salto de línea \n para separar
los atributos.
- Atributos:
- lineasDeCodigoPorHora : tipo entero
- lenguajeDominante: tipo cadena
- Metodos:
- Constructor con y sin parámetros de entrada.