You are on page 1of 14

Desarrollo de Funciones en el Sistema Informático

Curso 2008/2009

Programación orientada a objetos (I).
Orientaciones didácticas

 Parte teórica
 Parte práctica
 Base de conocimiento (alias preguntas más frecuentes)

Quincena 09. Orientaciones didácticas Página 1 de 14
Desarrollo de Funciones en el Sistema Informático
Curso 2008/2009

Parte teórica
El tema 9 inicia el verdadero núcleo de este segundo cuatrimestre: la programación orientada
a objetos.

Hay mucha gente que insiste en la dificultad que supone cambiar de la programación
estructurada a la programación orientada a objetos, pero yo no estoy de acuerdo con esta
teoría. Por supuesto, vosotros podréis tener algunas trabas por el hecho de estudiar a
distancia, pero entre todos vamos a superarlas.

La programación orientada a objetos se basa realmente en unos pocos conceptos nuevos. El
resto es una continuación "natural" a la programación estructurada. Es un intento de
aproximarse a nuestra manera de pensar y alejarse de la "manera de pensar" de la máquina.
Intentaré explicaros los nuevos conceptos con la mayor sencillez posible a través del blog.

Mientras tanto, estudiad el apartado 5.6 que corresponde al tema que nos ocupa. En él vais a
aprender qué es una clase y cómo declararla; y qué es un objeto y cómo declararlo. También
aprenderéis a manipular los objetos.

En el último punto del apartado, veréis una iniciación a la herencia, que se desarrollará por
completo en el siguiente apartado, pero eso lo veremos en el siguiente tema.

Si entendéis este tema y os gusta algo la programación (que debería ;-), seguro que ahora os
gusta de verdad. Veréis qué evolución se ha producido en los lenguajes de programación y con
qué "gran estilo" se programa.

Os deseo un buen estudio.

Quincena 09. Orientaciones didácticas Página 2 de 14
Desarrollo de Funciones en el Sistema Informático
Curso 2008/2009

Parte práctica
La novena Prueba de Evaluación Quincenal del módulo es una práctica dividida en dos partes.

1. La primera parte consiste en crear una clase en Java con sus atributos y métodos. Es
muy importante que hagáis las cosas paso a paso y, utilizando una perspectiva global
del problema, completarlo pieza a pieza.

2. En la segunda parte se complementa el programa anterior para manipular la clase que
se ha creado. Es una ampliación al uso de la API que hicimos en la anterior práctica. A
diferencia de la anterior práctica (donde yo os daba los objetos y las indicaciones de
qué debíais hacer en cada momento), ahora sois vosotros quienes analizaréis y
utilizaréis aquellas clases que creáis oportunas.

Recordad que para acceder a la evaluación cuatrimestral, la entrega de todas las PEQs es
obligatoria (y cada una de ellas debe tener una nota superior a 2).

Quincena 09. Orientaciones didácticas Página 3 de 14
Desarrollo de Funciones en el Sistema Informático
Curso 2008/2009

Base de conocimiento
De Santiago Tur Querol:
Hola, en el apartado "A" entiendo que tengo que crear un método por cada uno de los atributos, ¿o no es así?,
y el método ha de devolver el valor introducido para imprimir cada uno de ello

De Cristian Jorge Garcia Marcos:

Hola Santi,

En el apartado A debes:

1.- Crear una clase Equipo que contenga todos los atributos y los métodos que se te indican en la tabla.
Échale un vistazo a mis dos últimas entradas en el blog para ver qué es, cómo funciona y cómo se crea una
clase en Java.

2.- Crear todos los métodos getters y setters de todos los atributos, a excepción de los atributos id y status.
Échale un vistazo al documento "vademecum Java" para ver qué es, cómo funciona y cómo se crean los
métodos getters y setters.

Si la pregunta es si cada método getter ha de devolver el valor que tiene el atributo de la clase, la respuesta
es sí.

Si la pregunta es si cada método getter ha de devolver el valor que tiene el atributo de la clase e imprimirlo,
la respuesta es no. La impresión debe realizarla de manera conjunta el método toString() de la clase, que
llamará adecuadamente a cada uno de los getters correspondientes para crear el pequeño "informe".

Espero haber resuelto tus dudas. Si hay algo que todavía no entiendes, no dudes en preguntar.

Un saludo,

Cristian.

De Cristian Jorge Garcia Marcos:

Añado algunos comentarios para facilitaros el trabajo con la PEQ9.

• Utilizad el "manual anexado" que enlacé en su día en el tema 8. Os será de utilidad estudiar los
apartados desde el 6.1 (conceptos) al 6.3 (creación de nuestras propias clases), ambos inclusive.
Sobretodo, es importante el punto 6.3.4 donde hay algo que no se trata en el manual de la UOC: la
visibilidad de los atributos y métodos de una clase. Es algo importantísimo para la correcta resolución de la
PEQ9.

• Me habéis preguntado en mensajes privados que no sabéis cómo atacar el problema. Veamos, una
manera de solucionar la práctica es en cuatro pasos: 1. Crear un proyecto PEQ9 en Eclipse que contendrá
tres clases, 2. Crear en ese proyecto una clase Equipo con los atributos y métodos que os he pedido, 3.
Crear en el mismo proyecto otra clase Inventario con los atributos y métodos que os he pedido y 4. Crear en
el proyecto una tercera clase TestInventario que contenga un método main() que creará los objetos creados
de las otras dos clases y comprobará que funcionan sus métodos.

Id haciendo cada paso y, a medida que os encontréis con problemas, comentadlo en el foro y los iremos
solucionando.

Saludos,

Cristian.

Quincena 09. Orientaciones didácticas Página 4 de 14
Desarrollo de Funciones en el Sistema Informático
Curso 2008/2009

De Cristian Jorge Garcia Marcos:
Bueno chicos, espero que aquellos quienes han celebrando la Magdalena hayáis disfrutado.

Acabaron las fiestas y es hora de seguir trabajando. Para los que aún estáis perdidos sobre cómo resolver un
problema orientado a objetos, voy a intentar dinamizar un poco el grupo.

He pensado lo siguiente, desde hoy hasta el día de la entrega de la PEQ9 (recordad que la retrasamos al lunes
30), os iré "marcando un rumbo" de cómo resolver, mediante la programación orientada a objetos en Java,
desde cero un problema a partir de un enunciado. Y esta PEQ9 nos servirá de guía.

Ya os adelanto que es importantísimo leer el enunciado 10, 20 o 30 veces durante el desarrollo de un problema.
No os acomplejéis ni penséis que algo va mal, porque ese es el camino para resolver los problemas: a cada
lectura nueva se encuentra algo nuevo, es normal.

Pues bien, empecemos con una primera lectura pausada del enunciado. Una vez leído, debéis:

1.- Crear la estructura estática (modelo E/R) con las entidades, relaciones y atributos necesarios que se indican
en el enunciado.

Podéis enviar vuestras soluciones al foro y las comentamos entre todos, ¿qué os parece?

Un saludo,

Cristian.

De Amadeo Olmedilla Garcia:
Aquí va mi E/R del ejercicio.

Lo que yo no termino de entender, por ejemplo (aparte de otras muchas cosas), es:
comentó Cristian de hacer una clase TestInventario para que creara los objetos y comprobara que funcionan
los métodos de las otras dos clases, pero por ejemplo cuando ejecutemos el programa, main, ¿Que hará
creará un equipo directamente, modificará un equipo directamente, listará todos los equipos ... y eliminará
el/los equipos directamente? ¿Cómo sabe el programa lo que yo quiero hacer? Supongo que en el main
estarán las llamadas a todos los métodos de EQUIPO e INVENTARIO, ¿No? ¿Habrá un menú para seleccionar
lo que quiero hacer en el main?

Yo he creado la clase EQUIPO, los getters y setter de esta (que por cierto no os habéis preguntado porque
no hay que crear los de id y status) y un "proyecto" de clase inventario para comprobar que funcionan los
get y set de los atributos de equipo, ... y ... ya, no se por donde seguir.

Bueno, y paro ya que no me quiero desanimar más.

Lo intentamos entre todos????

Un saludo. .-También para los que estén de resaca.

Quincena 09. Orientaciones didácticas Página 5 de 14
Desarrollo de Funciones en el Sistema Informático
Curso 2008/2009

De Santiago Tur Querol:
Hola Amadeo, tu primera pregunta la veo un poco complicada. Y respecto al esquema E/R, en las
entidades falta la clave principal que sería id, además del atributo status en EQUIPO y yo creo que en el
esquema el atributo fechaEntrega habría que ponerlo en la relación añadir, así como fechaBaja en la
relación eliminar.

Saludos,

Santi.

De Cristian Jorge Garcia Marcos:
Hola:

Poco a poco. Sin prisa, pero sin pausa. La POO es un cambio radical respecto a la programación
estructurada, pero ya os dije que con 4 ó 5 ideas bien explicadas, finalmente se entiende y se capta
la gran evolución que supone para el programador (y lo cercana y fácil que es esta programación).

Vamos a comentar el esquema ER propuesto por Amadeo:

Quincena 09. Orientaciones didácticas Página 6 de 14
Desarrollo de Funciones en el Sistema Informático
Curso 2008/2009

- Entidad INVENTARIO. Esta es una entidad "sospechosa". Algo que la hace sospechosa es que sólo
tiene un atributo, llamado numSerie. Las preguntas que yo me haría son: ¿sólo con un atributo, tiene
la suficiente importancia como para ser entidad? y ¿qué característica es número de serie en un
inventario?

En este caso, inventario es el típico ejemplo de una "entidad única del problema", que seguramente
ya habéis visto en otros ejercicios de SGBD. Este tipo de entidades no se introducen en los modelos
ER, ya que no aportan información alguna en estos modelos.

En este ejercicio en concreto, si hubiésemos pedido los inventarios de varios institutos, sí que
necesitaríamos una entidad inventarioDeUnInstituto o algo así, que tendría como clave primaria el
nombre del instituto, por ejemplo. Pero no es el caso, ya que sólo nos piden el inventario de 1
instituto. Por tanto, la entidad desaparece. Fijaos que no se pierde información alguna haciendo esto,
así que queda claro que la entidad inventario no tiene sentido.

- Interrelaciones entre las entidades inventario y equipo. Al eliminar la entidad inventario, obviamente
desaparecen todas sus interrelaciones.

Pero quiero hacer un comentario sobre el esquema que nos envía Amadeo: ha hecho una mezcla
entre un diseño funcional (como un DFD) y un diseño estático (como un ER). Total: se ha hecho un
lío.

El modelo ER únicamente es una representación "estática" de lo que ocurre en la realidad.
Añadir, listar, buscar y eliminar son algo "dinámico". Esto es muy importante, ¿entendéis la
diferencia? "Lo dinámico" no se puede modelar con un esquema ER.

En caso que el ejercicio tuviese la entidad inventario - que ya hemos dicho que desaparece – sí que
existiría una interrelación entre esta entidad y equipo, que sería algo como esto:

Pero no es nuestro caso.

- Atributos. En el modelo que nos envía Amadeo hay que añadir id y status. Ignoro porqué Amadeo
elimina estos atributos. Son atributos que nos pide explícitamente el enunciado, al igual que el resto.
De hecho, id es la clave primaria de la entidad equipo.

Por tanto, el modelo ER queda con una sola clase equipo. A los atributos de esa que nos envía
Amadeo, hay que añadir id y status.

Venga, dadle un poco de movimiento al foro. Creo que es interesante para todos.

Un saludo,

Cristian.

De Santiago Tur Querol:
Entonces para el esquema E/R habría que poner la entidad destino o departamento, no?

De Cristian Jorge Garcia Marcos:
No. Las entidades son las que os he indicado, ni más ni menos.
Destino (espacioDestino) es un atributo de la entidad EQUIPO.

Quincena 09. Orientaciones didácticas Página 7 de 14
Desarrollo de Funciones en el Sistema Informático
Curso 2008/2009

De Cristian Jorge Garcia Marcos:
Bien, una vez tenemos el modelo ER, debemos identificar las clases. Esto ya os lo he indicado yo en el
enunciado, para evitar que os complicarais y pudierais dedicar tiempo a otras cosas que me interesa que
trabajéis más.

Pero es bueno que hagamos todos los pasos para que entendáis el proceso. Así que, volvemos a leer el
enunciado y debéis:

2.- Identificar las clases (con sus atributos y sus métodos) y las relaciones entre ellas.

Una manera de representación de las clases y sus relaciones es con el modelo de clases en UML, que está fuera
de los objetivos de este módulo. Aunque, como nuestro esquema tampoco es complicado, nos servirá para que
lo catéis.

¿Alguien se atreve con esto? Si no, mañana la respuesta.

Un saludo,

Cristian.

De Santiago Tur Querol:
Hola, según el modelo de clases, ¿podría ser que quedara así?. Yo creo que que Inventario tiene
dependencia de Equipo, por eso le he puesto la flecha de agregación por valor.

De Amadeo Olmedilla Garcia:
Yo lo veo perfecto.
Vamos a seguir a ver si podemos con la práctica.

Quincena 09. Orientaciones didácticas Página 8 de 14
Desarrollo de Funciones en el Sistema Informático
Curso 2008/2009

De Cristian Jorge Garcia Marcos:
Muy bien Santi. Tanto la agregación como la composición son opciones válidas.

Pero fijaos la diferencia de este modelo con respecto al modelo ER. En el modelo de clases aparecen dos clases
(equipo e inventario) y nos indica qué atributos y qué métodos tiene cada clase. Aunque este modelo parezca
más completo que el modelo ER, ambos se complementan.

Una vez tenemos el modelo de clases, empezaremos la implementación, es decir, a programar. El tercer paso
(implementación), tendrá varios apartados. Veamos el primer apartado:

3.a. Implementar la clase Equipo.

De este paso ya no debéis hacer comentarios exhaustivos en el foro, ni enviar trozos de código, pero tenéis
toda la libertad para comentar las dudas puntuales que os vayan surgiendo sobre cómo se implementa.

La clase no contine el método main() por lo que todavía no podemos comprobar si lo que estamos haciendo
está bien o mal, únicamente podemos intuirlo.

Os dejo hasta mañana para implementar la clase Equipo y también mañana os explicaré cómo podemos hacer
las comprobaciones.
Un saludo,
Cristian.

De Santiago Tur Querol:
Hola Cristian, entonces ¿habría que crear otra clase llamada InventarioTest en el diagrama para incluir el
main()? y si hubiera que hacerlo ¿como se representa?

Te había consultado otra cosa pero no me has contestado en el cursoJava no hay ningún apartado 6.3.9.

Saludos,

Santi.

De Anónimo:
Hola!!

Bueno con un poco de retraso (la resaca madalenera aun dura) me apunto a buscar soluciones.

Santi viendo el documento y a lo que se refiere Cristian, me imagino que será el punto 6.3.8.

En cuanto a crear otra clase TestInventario, la verdad es que no creo que hiciera falta, no seria suficiente
con añadir una parte main dentro de la clase inventario para comprobar su funcionamiento, imagino que
lo mismo es posible para la comprobación de la clase equipo.

En cuanto a la clase Equipo imagino que todas las variables y métodos solo podrán ser visibles desde la
propia clase y no serán accesibles desde Inventario.

Para finalizar la variable fechaBaja, en el ejemplo no se ve que datos guarda así ¿que cuales son los
datos relevantes a guardar? ¿debe tener algún formato en concreto su salida por pantalla?

Ánimo!

De Cristian Jorge Garcia Marcos:
Hola Anónimo:

La idea de poner clases en ficheros diferentes y crear una clase de testeo para ejecutar el main() es
por elegancia en la programación. Así, lo que yo os propongo es:

Quincena 09. Orientaciones didácticas Página 9 de 14
Desarrollo de Funciones en el Sistema Informático
Curso 2008/2009

Fichero Equipo.java -> contendrá únicamente la implementación de la clase Equipo con sus atributos
y sus métodos.

Fichero Inventario.java -> contendrá únicamente la implementación de la clase Inventario con sus
atributos y sus métodos.

Fichero TestInventario.java -> contendrá únicamente el método main(), que contendrá código para
comprobar que la creación de objetos y métodos de las anteriores clases funciona adecuadamente.

Fijaos en el hecho de que aquí estamos actuando con dos roles: el de programador y el de usuario. El
programador crea las clases Equipo e Inventario, y el usuario las utiliza. Por tanto, lo que estamos
haciendo con la clase TestInventario, es actuar como usuario que utilizará las clases que ha creado el
programador para que hagamos nuestro trabajo.

Sobre el tema de la visibilidad: todos los atributos son privados (no son accesibles desde ninguna otra
clase) y todos los métodos son públicos (son accesibles para todas las clases). Si es interesante que
"desde fuera" algún
atributo pueda ser accedido y/o modificado, debéis utilizar métodos getter y/o setter,
respectivamente.

Para finalizar, las fechas deben tener el formato dd/mm/aaaa.

Un saludo,
Cristian.

De Cristian Jorge Garcia Marcos:
Hola Santi:

No adelantéis tareas, que después se os acumularán muchas cosas y os agobiaréis.
Hoy ya deberíais tener implementada la clase Equipo (es la tarea 3.a. que os pedí). Ahora debéis
comprobar si la habéis implementado bien. ¿Cómo se hace esto en Java? Una posibilidad
"elegante" para comprobar si las clases que uno implementa son correctas es creando una nueva
clase, por ejemplo, TestInventario (recordad que en Java TODO son clases) que contenga un
método main() para trabajar con la clase Equipo. Esta claro que la clase debería llamarse - por ser
coherentes - TestEquipo, pero como nos servirá también para comprobar más tarde la clase
Inventario, pues le llamamos TestInventario.

La representación gráfica es:

Por tanto, os dejo el día de hoy para:

3.b. Implementar la clase TestInventario.
Esta clase la ponéis en un nuevo fichero dentro del mismo paquete y únicamente tendrá el método
main(). El código que escribáis en esta clase "jugará" con la clase Equipo. Es decir, deberá crear
uno, dos, tres o cuatro objetos de Equipo, después llamará al método toString() de cada uno de
ellos y os deberá funcionar todo, tal y
como se pide en el enunciado.

Si tenéis alguna duda, aquí estamos.
Un saludo,
Cristian.

PD: Santi, te he contestado a las 6 horas de enviar tu mensaje. Recordad que el plazo de
contestación es de 48 horas.

Quincena 09. Orientaciones didácticas Página 10 de 14
Desarrollo de Funciones en el Sistema Informático
Curso 2008/2009

De Santiago Tur Querol:
Hola, yo ya estoy un poco mareado. Se supone que setNombre sirve para introducir un valor en esa variable,
¿como se lo introduzco?.

Yo he declarado las variables como privadas:
private tipo variable;
Y los métodos como públicos;
public tipo getVariable(){
return variable;
}
Pero no tengo claro como introducir el valor a la variable.

Para status, le paso el valor de la fecha y con un if compruebo si fecha tiene valor o no si no tiene valor le
asigno false a status o si lo tiene true.

Saludos,
Santi.

De Anónimo:
Hola Santi,
Pues para introducir la variable, tienes que crear otro método (p.ej. setVariable) que al contrario que
getVariable si recibirá un parametro, este parametro simplemente debes asignarlo a tu variable
privada.

Con esta explicación no sé si queda muy claro, con el código quedaria mas claro pero no se si debo
Saludos.
Anónimo.

De Santiago Tur Querol:
Hola Anónimo,

El método setVariable, he de crearlo también en la clase Equipo o donde cree el main()?

Saludos,

Santi.

De Anónimo:
En la clase Equipo, igual que el resto de métodos get*** y set**** (uno por cada variable, excepto id
y status).

De Cristian Jorge Garcia Marcos:
Tienes una implementación de los métodos de carga (setters) en el vademecum de Java que está
en este mismo tema 9.

Cuando un usuario (método main()) llame al método eliminarEquipo() de la clase Inventario, el
status se cambiará automáticamente y además también se actualizará automáticamente el valor
de la fecha de baja.
NOTA: Yo haría estas cosas "de refinamiento" una vez me funcionase la base (es decir, el método
constructor Equipo(...) y el método toString()) de la clase Equipo y la base (es decir, los métodos
añadir, buscar, eliminar
y listar) de la clase Inventario.

Un saludo,

Cristian.

Quincena 09. Orientaciones didácticas Página 11 de 14
Desarrollo de Funciones en el Sistema Informático
Curso 2008/2009

De Anónimo:
Una duda sobre las operaciones a realizar sobre los equipos/inventarios. ¿Pueden haber más métodos que los
indicados en el documento? Parece necesario un método para "dar de baja" pero no se indica tal cosa en la
práctica, pues eliminar equipo considero que és diferente a "dar de baja".

En cuanto a la fecha de baja en si, en la práctica indica que hay que pasar la fecha de baja al constructor, pero
si inicialmente esta va a ser nula ¿es realmente necesario pasársela al constructor?

También parecería útil un método en la clase inventario para actualizar los equipos ¿no?

Y por último ¿es necesario un menú en la clase testInventario para realizar las diferentes operaciones o es
suficiente con implementar los métodos requeridos?

Saludos.

Anónimo.

De Cristian Jorge Garcia Marcos:
Hola Anónimo,

Puedes añadir los métodos que tú creas necesarios para implementar correctamente las clases. Aunque, en
principio, creo que con los que os he indicado tenéis suficiente.

"Eliminar equipo" es "dar de baja del inventario". Es decir, cuando el usuario (en el método main()) llame al
método eliminarEquipo() lo que ocurrirá es que el status se cambiará automáticamente para indicar que
está dado de baja y se actualizará automáticamente también la fecha de baja con el día de hoy. No
"eliminaremos" realmente ningún equipo, ya que nos interesa tener almacenado el histórico de todos los
equipos que el instituto ha tenido.

Sobre el constructor: para evitar que cada uno tenga una propuesta de solución diferente, obligaremos a
pasar un null al usuario en la fecha de baja al crear el objeto.

El tema de añadir métodos es claro, como se dice en mi casa: "A més sucre, més dolç". Pero no vamos a
complicar más el ejercicio. Si hacéis todo lo que os pido correctamente, me doy por supersatisfecho.

Para finalizar, el tema del menú nunca me ha gustado plantearlo en ejercicios de este tipo. Prefiero la
creación de una clase de test que compruebe si lo que habéis hecho es correcto o no. Es decir, en ese clase
de testeo creas unos cuantos objetos de los que has implementado, llamas a todos los métodos para ver
que hacen lo que tienen que hacer y ya está.

Venga, que esto va avanzando. Espero que haya resuelto tus dudas.

Un saludo,

Cristian.

Quincena 09. Orientaciones didácticas Página 12 de 14
Desarrollo de Funciones en el Sistema Informático
Curso 2008/2009

De Alejandro Beltrán Navarro:
Buenas,

Después de varios días,...

Unas preguntitas, haber si podéis ayudarme porque voy muy perdido.

Lo primero es si en la función toString os da error con ese nombre, porque le pongo ese nombre a la función y
me lo señala como error, pero le cambio el nombre (le pongo por ejemplo imprimir) y me funciona
correctamente.

Otra cosa es como hacéis para que al imprimir la salida del toString os lo haga en el sitio correcto, ya que al
cambiar los datos se me descoloca.

Y por ultimo, ¿como creáis el array de objetos para la parte B de la practica? Esto es lo que mas me preocupa
ya que sino no se seguir.

De Alejandro Beltrán Navarro:
Otra pregunta que me dejaba antes...

¿Alguien sabe como utilizar el Iterator? Por que yo no lo se utilizar. Si alguien puede explicarlo (mas o
menos).

Bueno, cuando me aparezcan mas dudas ya las iré poniendo.

De Amadeo Olmedilla García:
Este también te puede valer para varias cosas de las que preguntas:

http://lineadecodigo.com/2007/01/27/listar-una-listaen-java/

y por lo del iterator y lo anterior:

http://www.particle.kth.se/~lindsey/JavaCourse/Book/Part1/Java/Chapter10/generics.html

***Por cierto mi problema con las fechas era la presentación, es decir, lo que me contestó Cristian, lo del
toString(), y luego también he utilizado lo que dijo sobre el tema Anónimo****

Por lo demás, creo que me he mirado todas las páginas habidas y por haber sobre Java en Internet en
estas últimas dos semanas.... y lo que nos queda.

De Amadeo Olmedilla García:
Voy a intentar reponder a lo que pueda:
A mi no me da error la función toString, la tengo definida así:

public String toString(){ .... y se que Cristian no quiere que pongamos código, pero, esto solo es la
definición de una función ....

Colocar la salida ... pufffff, no se tabuladores "\t\t" y espacios "".

El array de objetos te lo dice el enunciado es de tipo List, para hacer un nuevo objeto equipo que haces? …

Equipo nombre = new Equipo();

pues es practicamente igual (es más eclipse te ayuda bastante en ese caso).
echa un vistazo por aqui que es muy parecido a lo que necesitamos:

http://www.psicofxp.com/forums/programacion.313/389971-ayuda-con-arraylist.html

Quincena 09. Orientaciones didácticas Página 13 de 14
Desarrollo de Funciones en el Sistema Informático
Curso 2008/2009

De Cristian Jorge Garcia Marcos:
Creo que Amadeo te ha dado unas buenas contestaciones a tus preguntas.

Sólo añadir algo al tema del método toString(): no hay que darle mucha importancia si los datos se
"descolocan". Lo único que me interesa de esa función es que aparezca la información del equipo y la fecha
esté en formato legible por una persona, es decir, dd/mm/aaaa.

Un saludo,

Cristian.

NOTA: Todos los comentarios tienen la autorización expresa de publicación de sus respectivos autores. Aquellos comentarios que aparecen firmados bajo la
autoría Anónimo, también se han publicado autorizados con la condición de no mostrar el nombre del autor.

Esta obra está bajo una licencia Reconocimiento-Compartir bajo la misma licencia 3.0 España de Creative Commons. Para ver una copia de
esta licencia, visite http://creativecommons.org/licenses/by-sa/3.0/es/ o envie una carta a Creative Commons, 171 Second Street, Suite
300, San Francisco, California 94105, USA.

Quincena 09. Orientaciones didácticas Página 14 de 14