Hola como estan?
Bueno, estoy haciendo un pequeno programa sobre el alquiler de un articulo a un usuario de una universidad.
*1Clase padre Articulo.
Atributos:tipoArticulo, boolean Alquilado.
Metodos: getTipoArticulo() y getAlquilado().
*1Hay tres tipos de articulos: Portatil, Usb Y VideoBeam.
Nada mas nombrare los atributos del portatil.
Atributos portatil: memoria , ano .
metodos:getMemoria() y getAno(). (No nombrare todo, solo lo mas importante para que entiendan la duda.)
-----------------------------------------------------------------------
*2 Clase padre Usuario.
Atributos:codigo y nombre.
Metodos: getCodigo() y getNombre().
*2 Hay 2 tipos de usuarios: Alumno y profesor.
Nada mas nombrare los atributos de Alumno.
Atributos: semestre y promedio.
metodos:getSemestre() y getPromedio(). (No nombrare todo, solo lo mas importante para que entiendan la duda.)
-----------------------------------------------------------------------
El caso es que deseo hacer un alquiler de un producto con las especificificaciones deseados.
Supongamos:
Soy un alumno y quiero alquilar un portatil con 2gb de ram.
Para esto, lo que haria seria: buscar de acuerdo a mi codigo como alumno en el vector de Usuario ubicado en el Almacen.
Luego buscaria en el vector Producto, un producto de tipo portatil que no este alquilado.
Pero....
Luego como haria para acceder al atributo memoria del objeto portatil ubicado en el vector de tipo Usuario???
Yo lo hago de la sgt manera, pero me sale error:
if (p[1].getMemoria()==2){
......
}
Me imagino que debe pasar porque la clase padre, en este caso Producto, no puede acceder a los metodos ubicados en las clase hija, en este caso clase Portatil.
Como haria entonces?
Temas utilizados:
*Herencia abstracta.
*Clases compuestas.
*Vectores de objetos.
Muchas gracias, y espero hayan entendido mi duda.