Java - manejo de objetos

 
Vista:

manejo de objetos

Publicado por luis  (1 intervención) el 10/09/2009 19:28:42
Ejercicios de T.P.O.
1. Identifique los datos que decidiría utilizar para almacenar el estado de los siguientes
objetos en función del contexto en el que se vayan a utilizar:
a. Un punto en el espacio.
b. Un segmento de recta.
c. Un polígono.
d. Una manzana (de las que se venden en un mercado).
e. Una carta (en Correos)
f. Un libro (en una biblioteca)
g. Un libro (en una librería)
h. Una canción (en una aplicación para un reproductor MP3).
i. Una canción (en una emisora de radio)
j. Un disco de música (en una tienda de música).
k. Un disco de música (en una discoteca).
l. Un teléfono móvil (en una tienda de telefonía)
m. Un teléfono móvil (en el sistema de una empresa de telecomunicaciones)
n. Una computadora (en una tienda de Informática)
o. Una computadora (en una red de ordenadores)
p. Una computadora (en el inventario de una organización)
Declare las correspondientes clases en Java, defina los constructores que considere
adecuados e implemente los correspondientes métodos para el acceso y la modificación del
estado de los objetos (esto es, los métodos get y set), también implemente el método
String toString() para visualizar los datos del objeto e incluya los métodos que Usted
considere.
2. Defina adecuadamente el código en Java que se derivan del siguiente diagrama:
3. Se tiene los siguientes conjuntos de objetos:
a. Una colección de CDs, entre los cuales hay discos de música (CDs de audio), discos de
música en MP3 (CD-ROMs con música), discos de aplicaciones (CD-ROMs con software)
y discos de datos (CD-ROMs con datos y documentos).
b. Los diferentes productos que se pueden encontrar en una tienda de electrónica, que
tienen un conjunto de características comunes (precio, código de barras…) y una serie de
características específicas de cada producto.
c. Los objetos de una colección de monedas/billetes/sellos.
Implemente en Java las jerarquías de clases que haya diseñado (incluyendo sus variables de
instancia, sus constructores y sus métodos get/set). A continuación, escriba programas
que realicen las siguientes tareas:
a. Buscar y mostrar todos los datos de un CD concreto (se recomienda definir el método
toString en cada una de las subclases de CD).
b. Crear un carrito de la compra en el que se pueden incluir productos y emitir un ticket en
el que figuren los datos de cada producto del carrito, incluyendo su precio y el importe total
de la compra.
c. Un listado de todos los objetos coleccionables cuya descripción incluya una cadena de
caracteres que el programa reciba como parámetro.
4. Cree un paquete denominado documentos…
a. Incluya en él dos clases, Factura y Pedido, para representar facturas y pedidos,
respectivamente.
b. A continuación, ya fuera del paquete, cree un pequeño programa que cree objetos de
ambos tipos y los muestre por pantalla.
c. Añada un tercer tipo de documento, PedidoUrgente, que herede directamente de
Pedido. Compruebe que el programa anterior sigue funcionando correctamente si
reemplazamos un Pedido por un PedidoUrgente.
d. Cree un nuevo tipo de documento, denominado Contrato, e inclúyalo en el
subpaquete documentos.rrhh. En este último paquete, incluya también un tipo de
documento CV para representar el currículum vitae de una persona.
e. Si no lo ha hecho ya, cree una clase genérica Documento de la que hereden (directa
o indirectamente) todas las demás clases que hemos definido para representar distintos
tipos de documentos.
f. Implemente un pequeño programa que cree un documento de un tipo seleccionado por
el usuario. Muestre por pantalla el documento independientemente del tipo concreto de
documento que se haya creado en el paso anterior.
5. Declare e implemente adecuadamente las clases en Java que se derivan del siguiente
diagrama de clases UML e implemente el método dibujar() para las clases Ventana y
Panel.
NOTA: Al dibujar una ventana, hay que dibujar su icono y el panel que contiene todos los
componentes gráficos incluidos en la ventana. Al dibujar el panel, hay que ir dibujando uno
a uno todos los componentes que contiene.
6. Diseñe una clase Cuenta que represente una cuenta bancaria y permita realizar
operaciones como ingresar y retirar una cantidad de dinero, así como realizar una
transferencia de una cuenta a otra.
a. Defina la clase utilizando la sintaxis de Java, definiendo las variables de instancia y
métodos que crea necesarios.
b. Implemente cada uno de los métodos de la clase. Los métodos deben actualizar el
estado de las variables de instancia y mostrar un mensaje en el que se indique que la
operación se ha realizado con éxito.
c. Cree un programa en Java (en una clase llamada CuentaTest) que cree un par de
objetos de tipo Cuenta y realice operaciones con ellos. El programa debe comprobar
que todos los métodos de la clase Cuenta funcionan correctamente.
7. Diseñe una clase Factura que represente la venta de un producto en una tienda. La clase
debe incluir información relativa al producto vendido (código, descripción y precio),
datos acerca del cliente que compra el producto (nombre, apellidos, dirección, DNI) y el
número de unidades compradas. Los métodos de la clase han de permitir obtener el
importe total de la compra (suponiendo que se aplica un porcentaje de I.G.V.) y generar
un informe con los datos de la factura (el “ticket” correspondiente a la venta), además
de poder acceder y modificar los distintos datos recogidos en la factura.
a. Implemente en Java la clase.
b. Cree un programa (FacturaTest) que compruebe el correcto funcionamiento de la
implementación realizada.
c. Idee la forma de descomponer la clase Factura en varias clases de forma que la
implementación resultante sea más cohesiva y las clases estén débilmente acopladas.
Nota: La factura mezcla varios datos de productos con datos relativos a clientes
OBSERVACIONES:
Para cada clase que defina, determine qué miembros de la clase han de ser públicos
(public), cuáles han de mantenerse privados (private) y, si lo considera oportuno,
cuáles serían miembros protegidos (protected).
Tenga en cuenta que no siempre se debe permitir la modificación desde el exterior de una
variable de instancia (esto es, habrá variables de instancia a las que asociemos un método
get pero no un método set y, de hacerlo, éste puede que sea privado o protegido).
Analice también qué métodos de una clase deben declararse con la palabra reservada final
para que no se puedan redefinir en subclases y qué clases han de ser “finales” (esto es,
aquellas clases de las que no queramos permitir que se creen subclases).
En los distintos programas de esta relación de ejercicios puede resultar necesaria la
creación de colecciones de objetos de distintos tipos (p.ej. arrays de CDs, productos,
objetos coleccionables o documentos).
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder

RE:manejo de objetos

Publicado por Mario (3 intervenciones) el 11/09/2009 13:21:32
Pero tú que quieres que te hagan todo eso sin tú torcer el brazo??
Y encima sin una petición, ni una aclaración ni nada??
A esto se le llama tener cara y desconocer el significado de la palabra vergüenza...
No creo que encuentres muchas respuestas, pero suerte
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar