Como puedo hacer este enunciado ?
Publicado por vicente jesus oyarce jofre (1 intervención) el 13/11/2019 02:50:15
Se desea construir una aplicación que permita registrar los libros que se venden en la librería "La librería de papel" para poder mostrar a sus usuarios los títulos disponibles. Para esto se solicita su participación dentro del equipo de desarrollo y así permitir dar solución a este requerimiento. El jefe de proyecto ha generado el diagrama de clases que le corresponde implementar en Java.
A continuación se describen los atributos a definir en las clases Libro, Infantil y Técnico, donde correspondan:
Se sabe que los libros tienen un título, un número de páginas, un precio, los libros infantiles tiene un rango de edad (mínimo y máximo) y los libros técnicos cuentan con un indicador para saber si trae incorporado un CD o DVD con material extra.
La interface ICalculable tiene:
iva: 19%
descuentoLibroInfantil: 10%
descuentoLibroTecnico: 5%
Los métodos de la interfaz son:
obtenerTotalCompra: calcula el precio final de la compra, considere el precio del libro y la cantidad que llevará. Esta cantidad se ingresa por el usuario del sistema.
descontar: calcula el descuento que se aplica sobre el total calculado en el método anterior. Se debe calcular el descuento definido en la interfaz dependiendo del tipo de libro.
obtenerTotalFinal: calcula el total de la compra considerando los descuentos. Se debe incluir en el total, el impuesto asociado al IVA.
La clase Libro debe tener un método abstracto que retorne la clasificación del libro (INFANTIL o TÉCNICO), el título y precio. Si es un libro infantil debe agregar el rango de edad. El método debe retornar:
“INFANTIL: El principito, $9.990 para menores entre 9 y 12 años"
o
“TÉCNICO: Aprenda Java en 21 días, $39.990"
La clase Infantil no tiene subclases.
Además, deben existir los siguientes métodos en las clases:
constructores, sobrecargando el método
accesadores
mutadores considerando las reglas de negocio
toString que retorne los atributos de todas las clases sobreescribiendo el método.
Debe existir una clase RegistroLibro que permita:
Guardar en una colección todos los libros (INFANTIL o TÉCNICO) validando que no
exista el título.
Mostrar en pantalla una lista con todos los libros y sus atributos.
Eliminar un libro por su título.
Obtener la cantidad de libros que son extensos, esto es, que tienen más de 500
páginas.
Desde el método main debe:
Agregar un libro infantil y un libro técnico a la colección.
Debe mostrar el total final para el libro infantil.
Obtener la cantidad de libros extensos.
Eliminar un libro
A continuación se describen los atributos a definir en las clases Libro, Infantil y Técnico, donde correspondan:
Se sabe que los libros tienen un título, un número de páginas, un precio, los libros infantiles tiene un rango de edad (mínimo y máximo) y los libros técnicos cuentan con un indicador para saber si trae incorporado un CD o DVD con material extra.
La interface ICalculable tiene:
iva: 19%
descuentoLibroInfantil: 10%
descuentoLibroTecnico: 5%
Los métodos de la interfaz son:
obtenerTotalCompra: calcula el precio final de la compra, considere el precio del libro y la cantidad que llevará. Esta cantidad se ingresa por el usuario del sistema.
descontar: calcula el descuento que se aplica sobre el total calculado en el método anterior. Se debe calcular el descuento definido en la interfaz dependiendo del tipo de libro.
obtenerTotalFinal: calcula el total de la compra considerando los descuentos. Se debe incluir en el total, el impuesto asociado al IVA.
La clase Libro debe tener un método abstracto que retorne la clasificación del libro (INFANTIL o TÉCNICO), el título y precio. Si es un libro infantil debe agregar el rango de edad. El método debe retornar:
“INFANTIL: El principito, $9.990 para menores entre 9 y 12 años"
o
“TÉCNICO: Aprenda Java en 21 días, $39.990"
La clase Infantil no tiene subclases.
Además, deben existir los siguientes métodos en las clases:
constructores, sobrecargando el método
accesadores
mutadores considerando las reglas de negocio
toString que retorne los atributos de todas las clases sobreescribiendo el método.
Debe existir una clase RegistroLibro que permita:
Guardar en una colección todos los libros (INFANTIL o TÉCNICO) validando que no
exista el título.
Mostrar en pantalla una lista con todos los libros y sus atributos.
Eliminar un libro por su título.
Obtener la cantidad de libros que son extensos, esto es, que tienen más de 500
páginas.
Desde el método main debe:
Agregar un libro infantil y un libro técnico a la colección.
Debe mostrar el total final para el libro infantil.
Obtener la cantidad de libros extensos.
Eliminar un libro
Valora esta pregunta


-1