[ Foro de Java ]

Ayuda con un proyecto

30-May-2022 08:33
Invitado (BECO)
0 Respuestas

La Fábrica Nacional de Moneda y Timbre quiere almacenar cierta información técnica del
dinero (billetes y monedas) que emite. En concreto, le interesa:
? Valor: Valor de la moneda o billete, en euros (double)
? Año de emisión: Año en que fue emitida la moneda o billete (int)
? De las monedas:
? Diámetro: Diámetro de la moneda, en milímetros (double)
? Peso: Peso de la moneda, en gramos (double)
? De los billetes:
? Altura: Altura del billete, en mm (double)
? Anchura: Anchura del billete, en mm (double)
Diseñar la clase Dinero, de la cual no se podrán instanciar objetos, y sus subclases
Moneda y Billete, desarrollando:
? Todos los atributos deben ser inaccesibles desde fuera de la propia clase.
? Constructores que reciban los datos necesarios para inicializar los atributos de la
clase correspondiente.
? Constructores de copia.
? equals: Dos monedas o billetes son iguales si tienen el mismo año de emisión y
valor.
? compareTo: Es menor (mayor) el de menor (mayor) año de emisión; a igual año, es
menor (mayor) el de menor (mayor) valor.
? toString: Que muestre todos los datos del billete o moneda. Los billetes irán
precedidos por el texto “BILLETE” y las monedas por el texto “MONEDA”.
NOTA: Los métodos equals, compareTo y toString, aunque se van a sobreescribir para
adaptarlos a las necesidades de este supuesto, deben cumplir con las especificaciones
originales para dichos métodos en cuanto a parámetros de entrada y tipo de retorno.
Diseñar la clase TestDinero para probar las clases desarrolladas:
? Crear objetos
? Almacenarlos en un ArrayList
? Mostrarlos por pantalla
? Comprobar si hay dos objetos iguales, y mostrar un mensaje que lo indique
? Ordenar el ArrayList en función del método compareTo definido arriba
? Crear copias de objetos
? Buscar objetos
? Modificar los atributos de dimensión de los objetos
? Eliminar objetos
Antes de mostrar el resultado de cada acción, muestra por pantalla un mensaje del tipo:
CREACIÓN DE UN OBJETO
*********************




(No se puede continuar esta discusión porque tiene más de dos meses de antigüedad. Si tienes dudas parecidas, abre un nuevo hilo.)