FPJUCE - Capitulo2

1,735 views
1,644 views

Published on

Temas tratados en el Capítulo 2 del Curso de Fundamentos de Programación en Java - PROGRAMACIÓN ORIENTADA A
OBJETOS CON JAVA.
Unidad de Educación Contínua - UNIDEC
Universidad Central del Ecuador
Ing. Giovanny Moncayo Unda

Published in: Education
0 Comments
0 Likes
Statistics
Notes
  • Be the first to comment

  • Be the first to like this

No Downloads
Views
Total views
1,735
On SlideShare
0
From Embeds
0
Number of Embeds
0
Actions
Shares
0
Downloads
75
Comments
0
Likes
0
Embeds 0
No embeds

No notes for slide

FPJUCE - Capitulo2

  1. 1. Ing. Giovanny Moncayo [email_address] [email_address] 095 026 736 081 869 725 CAPÍTULO II PROGRAMACIÓN ORIENTADA A OBJETOS CON JAVA
  2. 2. En esta presentación <ul><li>Introducción a la POO (Programación Orientada a Objetos) </li></ul><ul><li>Conceptos Básicos de Programación en Java </li></ul><ul><li>Qué son los Objetos? </li></ul><ul><li>Unified Modeling Language – UML </li></ul><ul><li>Descripción de una Clase </li></ul><ul><li>Introducción a la Clase System </li></ul>
  3. 3. Palabras clave <ul><li>Objeto </li></ul><ul><li>Clase </li></ul><ul><li>Atributo </li></ul><ul><li>Método – Accesores, Mutadores, Personalizados </li></ul><ul><li>Argumentos de un método </li></ul><ul><li>Valores de retorno en un método </li></ul><ul><li>Constructor </li></ul>
  4. 4. Palabras clave - Continuación <ul><li>Modificadores de acceso </li></ul><ul><li>Relaciones entre Objetos </li></ul><ul><li>UML </li></ul><ul><li>Instancia de una Clase </li></ul><ul><li>Herencia </li></ul><ul><li>Encapsulación </li></ul><ul><li>Garbage Collector – Recolector de Basura de Java </li></ul>
  5. 5. Introducción a la Programación Orientada a Objetos <ul><li>La Programación Orientada a Objetos es muy diferente de la Programación Procedimental. </li></ul><ul><li>PROGRAMACIÓN PROCEDIMENTAL </li></ul><ul><ul><li>Se basa en una secuencia de instrucciones que se ejecutan una tras otra. </li></ul></ul><ul><ul><li>Difícil de mantener. </li></ul></ul><ul><li>PROGRAMACIÓN ORIENTADA A OBJETOS </li></ul><ul><ul><li>Se basa en una colección de Objetos que interactúan entre sí a través de mensajes (métodos). </li></ul></ul><ul><ul><li>Los Objetos tienen datos e instrucciones. </li></ul></ul><ul><ul><li>El código puede ser reutilizado – Fácil de mantener. </li></ul></ul>
  6. 6. Conceptos Básicos de Programación en Java <ul><li>Objeto: Contiene datos e instrucciones para procesar datos (Se encuentra en la memoria HEAP) </li></ul><ul><li>Clase: Representación física de un Objeto (estructura, molde o esqueleto). </li></ul><ul><li>Atributo: Describe el estado de un objeto, se llaman datos (Lo que conoce el objeto ó lo que se conoce del objeto). </li></ul><ul><li>Tipo de Dato: Describe el tipo de Información que almacena un atributo. Ej: String, int, double, etc. </li></ul>
  7. 7. Conceptos Básicos de Programación en Java <ul><li>Método: Es un grupo de instrucciones </li></ul><ul><li>Comportamiento: Describe lo que el objeto puede hacer </li></ul><ul><li>Herencia: Capacidad de los objetos para derivar atributos y métodos de otros objetos más generales. </li></ul><ul><li>Encapsulación: Ocultación de la información que almacenan los objetos. (Atributos privados y acceso a los mismos a través de Métodos públicos) </li></ul>
  8. 8. Qué son los Objetos? <ul><li>INTRODUCCIÓN </li></ul><ul><ul><li>Cualquier cosa Tangible o Abstracta que es relevante. </li></ul></ul><ul><ul><li>Pueden tener Atributos y Métodos. </li></ul></ul><ul><ul><li>Los Atributos describen las características del Objeto, lo que conoce ó lo que se conoce de él . </li></ul></ul><ul><ul><li>Los Métodos describen definen su comportamiento, lo que el Objeto puede hacer . </li></ul></ul>
  9. 9. Qué son los Objetos?
  10. 10. Qué son los Objetos? <ul><li>CLASIFICACIÓN DE LOS OBJETOS </li></ul><ul><ul><li>Objetos que interactúan con el usuario </li></ul></ul><ul><ul><ul><li>Ej: Elementos de una GUI </li></ul></ul></ul><ul><ul><li>Objetos del entorno Operativo </li></ul></ul><ul><ul><ul><li>Ej: Computador, Servidor, etc. </li></ul></ul></ul><ul><ul><li>Objetos relacionados a tareas específicas </li></ul></ul><ul><ul><ul><li>Ej: Documentos, Sonido, Audio, etc. </li></ul></ul></ul>
  11. 11. Qué son los Objetos? <ul><li>CÓMO SE DEFINE UN OBJETO </li></ul><ul><ul><li>Lo primero que se debe tener en cuenta es: </li></ul></ul><ul><ul><ul><li>Cuáles son los Atributos del Objeto. </li></ul></ul></ul><ul><ul><ul><li>Cuáles son los Métodos del Objeto. </li></ul></ul></ul><ul><ul><li>A través de una clase se pueden definir un sin número de Objetos. </li></ul></ul><ul><ul><li>Cada Objeto definido es una “Instancia de la Clase”. </li></ul></ul>
  12. 12. Qué son los Objetos? <ul><li>CREACIÓN DE UN OBJETO </li></ul><ul><ul><li>Un Objeto es creado a través del constructor, utilizando el operador new . </li></ul></ul><ul><ul><li>El constructor contiene las instrucciones para la creación del Objeto. </li></ul></ul><ul><ul><li>Todos los Objetos se almacenan en el HEAP. </li></ul></ul>public Cliente(String nombreCliente, int edadCliente){ nombreCliente = nombre; edad = edadCliente; }
  13. 13. Qué son los Objetos? <ul><li>INTERACIÓN – OPERACIÓN CON OBJETOS </li></ul><ul><ul><li>Un Objeto interactúa a través de sus métodos. </li></ul></ul><ul><ul><li>Los métodos son usados para enviar y recibir mensajes entre los objetos. </li></ul></ul><ul><ul><li>Los Objetos obtienen información de otros Objetos por medio de los Métodos Accesores (GET). </li></ul></ul><ul><ul><li>Los Objetos alteran la información de otros Objetos por medio de los Métodos Mutadores (SET). </li></ul></ul><ul><ul><li>El operador para acceder a los métodos de un Objetos es el “Punto ( . )” </li></ul></ul>
  14. 14. Qué son los Objetos? <ul><li>LA ENCAPSULACIÓN </li></ul><ul><ul><li>Significa: </li></ul></ul><ul><ul><ul><li>Ocultación de la Información </li></ul></ul></ul><ul><ul><ul><li>Protección de datos </li></ul></ul></ul><ul><ul><li>Se restringe el acceso a la información del Objeto (sus Atributos). </li></ul></ul><ul><ul><li>En java se implementa a través de los modificadores de acceso public, private y protected. </li></ul></ul><ul><ul><li>Para encapsular un Objeto, los atributos de la clase deben ser definidos como privados y se debe proporcionar acceso a cada uno de ellos a través de métodos públicos (get/set – mutadores/accesores). Esto es casi un JavaBean, sólo falta definir el constructor de la clase. </li></ul></ul>
  15. 15. Qué son los Objetos? <ul><li>LA ENCAPSULACIÓN – MODIFICADORES DE ACCESO </li></ul>
  16. 16. Qué son los Objetos? <ul><li>RELACIONES ENTRE OBJETOS </li></ul><ul><ul><li>Asociación: Un objeto tiene una referencia a otro Objeto, o lo que es lo mismo, crea una Instancia de otro Objeto. </li></ul></ul><ul><ul><li>Dependencia: Un objeto no puede existir sin la existencia previa de otro Objeto. </li></ul></ul><ul><ul><li>Generalización: Un Objeto deriva Atributos y Comportamientos de otro Objeto (Herencia). </li></ul></ul>
  17. 17. Qué son los Objetos? <ul><li>HERENCIA </li></ul><ul><ul><li>Es uno de los conceptos más importantes de la POO. </li></ul></ul><ul><ul><li>Consiste en la capacidad de crear clases que reutilicen el código de clases más generales (atributos y métodos), y que al mismo tiempo puedan añadir atributos y métodos propios. </li></ul></ul><ul><ul><li>Ventajas de la Herencia: </li></ul></ul><ul><ul><ul><li>Reutilización del código. </li></ul></ul></ul><ul><ul><ul><li>Mantenimiento de las aplicaciones (Escalabilidad). </li></ul></ul></ul><ul><ul><li>En Java NO existe herencia múltiple. Sólo se puede heredar de una clase. </li></ul></ul><ul><ul><li>SI es posible herencia multinivel (Varios niveles de herencia). </li></ul></ul><ul><ul><li>Una misma clase, puede ser heredada por varias clases. </li></ul></ul>
  18. 18. Qué son los Objetos? <ul><li>HERENCIA </li></ul><ul><ul><li>Para hacer herencia, se usa la palabra reservada extends en la clase Hija. </li></ul></ul><ul><ul><li>La Herencia entre dos clases establece una relación “es un” , en el ejemplo, un Profesor es una Persona </li></ul></ul>
  19. 19. Qué son los Objetos? <ul><li>DESTRUCCIÓN - GARBAGE COLLECTOR </li></ul><ul><ul><li>En Java NO es posible saber en qué momento exacto un Objeto será destruido, sólo es posible determinar a partir de qué momento esto puede suceder (cuando se elimine la última referencia al mismo) </li></ul></ul><ul><ul><li>El Garbage Collector es una aplicación que forma parte de la JVM, la cual se encarga de liberar de la memoria los objetos “No Referenciados”. </li></ul></ul><ul><ul><li>Si un Objeto es asignado a null, éste pierde su referencia y es marcado como “basura”. </li></ul></ul><ul><ul><li>El Garbage Collector no es controlable, lo maneja directamente el Sistema Operativo. </li></ul></ul>
  20. 20. Qué son los Objetos? <ul><li>DESTRUCCIÓN - GARBAGE COLLECTOR </li></ul><ul><ul><li>Se puede hacer la llamada al Garbage Collector a través de la siguiente línea de código: </li></ul></ul><ul><ul><li>System.gc(); </li></ul></ul><ul><ul><li>Esta llamada hará que el Recolector de Basura empiece a competir por tiempo de CPU, ya que como se dijo anteriormente, es el Sistema Operativo quién lo controla, y se ejecutará cada vez que el HEAP esté próximo a llenarse. </li></ul></ul>
  21. 21. Unified Modeling Language – UML <ul><li>Lenguaje utilizado para modelar Programas Orientados a Objetos. </li></ul><ul><li>Consiste de un conjunto de símbolos para representar Clases, las relaciones entre ellas, sus niveles de acceso y su estado. </li></ul><ul><li>Existen diferentes tipos de diagramas UML, entre ellos los más utilizados son: Casos de Uso, Secuencia y Clases. </li></ul><ul><li>Otros tipos de diagramas UML son: Colaboración, Actividad, Componentes, Despliegue, etc. </li></ul>
  22. 22. UML – Diagrama de Clases <ul><li>Permite modelar: </li></ul><ul><ul><li>Los Atributos y Comportamientos de una Clase. </li></ul></ul><ul><ul><li>Las relaciones entre clases. </li></ul></ul>
  23. 23. UML – Símbolos del Diagrama de Clases <ul><li>Las Clases se representan a través de Rectángulos, divididos en tres zonas: La primera para el nombre de la Clase, la segunda para los Atributos y la tercera para los Métodos o Comportamientos. </li></ul><ul><li>Las líneas describen las relaciones entre las Clases u Objetos (Asociación, Dependencia ó Generalización) </li></ul>
  24. 24. UML – Símbolos del Diagrama de Clases <ul><li>Algunos símbolos especiales describen el nivel de acceso, estos son: </li></ul>
  25. 25. UML – Características de un Diagrama de Clases <ul><li>Los Atributos por lo general serán privados , seguidos del Tipo de Dato y en algunos casos de una inicialización Explícita. </li></ul><ul><li>Los Métodos por lo general serán públicos , seguidos de la lista de argumentos y del Tipo de Retorno. </li></ul><ul><li>Los métodos dentro del diagrama UML deben ser ordenados de la siguiente manera: </li></ul><ul><ul><li>Constructor </li></ul></ul><ul><ul><li>Métodos get/set </li></ul></ul><ul><ul><li>Métodos personalizados </li></ul></ul>
  26. 26. Descripción de una Clase <ul><li>DEFINICIÓN DE LA CLASE </li></ul><ul><ul><li>Una clase es definida utilizando la palabra reservada class y el modificador de acceso public </li></ul></ul><ul><ul><li>El nombre del archivo .java debe tener exactamente el mismo nombre de la clase. </li></ul></ul><ul><ul><li>Un mismo archivo .java puede contener más de una clase, pero sólo una de ellas podrá ser pública. </li></ul></ul><ul><ul><li>Varias clases públicas deben ser almacenadas en archivos separados. </li></ul></ul><ul><ul><li>Una clase NO es un Objeto, pero es usada para CREAR Objetos a través del operador new </li></ul></ul>
  27. 27. Descripción de una Clase <ul><li>DEFINICIÓN DE LA CLASE </li></ul><ul><ul><li>La firma para la definición de una clase: </li></ul></ul><ul><ul><li>[public] class NombreClase </li></ul></ul><ul><ul><li>{ </li></ul></ul><ul><ul><li>// Atributos </li></ul></ul><ul><ul><li> // Métodos </li></ul></ul><ul><ul><li>} </li></ul></ul><ul><ul><li>Lo que está entre [ ] puede obviarse, en ese caso, la clase tiene acceso por default. </li></ul></ul><ul><ul><li>Las clases no pueden ser private ni protected. </li></ul></ul>
  28. 28. Descripción de una Clase <ul><li>DEFINICIÓN DE LA CLASE </li></ul><ul><ul><li>El NombreClase , debe cumplir con las siguientes características: </li></ul></ul><ul><ul><ul><li>Debe ser un sustantivo. </li></ul></ul></ul><ul><ul><ul><li>La primera letra debe ser mayúscula y el resto minúsculas. </li></ul></ul></ul><ul><ul><ul><li>Se pueden mezclar varios sustantivos, iniciando cada uno de ellos con una letra mayúscula, lo que se conoce como CamelCase. </li></ul></ul></ul><ul><ul><ul><li>De preferencia evitar colocar caracteres raros dentro del Nombre de la Clase. </li></ul></ul></ul>
  29. 29. Descripción de una Clase <ul><li>DEFINICIÓN DE LOS ATRIBUTOS </li></ul><ul><ul><li>Los Atributos en una Clase, se representan a través de Variables ó Identificadores, y son los que definen el Estado de un Objeto. </li></ul></ul><ul><ul><li>Por lo general, se inicializan en el Constructor de la Clase. </li></ul></ul><ul><ul><li>Cada atributo debe estar asociado a un Tipo de Dato de acuerdo a la información que almacena, y pueden ser: </li></ul></ul><ul><ul><ul><li>Tipos de Dato Primitivos: byte, short, int, long, float, double, char y boolean </li></ul></ul></ul><ul><ul><ul><li>Tipos de Dato Referencia: Cualquier clase a la que se haga “Referencia”. Ej: String </li></ul></ul></ul>
  30. 30. Descripción de una Clase <ul><li>DEFINICIÓN DE LOS ATRIBUTOS </li></ul><ul><ul><li>El uso de uno u otro Tipo de Dato, se verá reflejado en el uso de la memoria dentro del computador y en las operaciones que se puedan realizar con dichos atributos. </li></ul></ul><ul><ul><li>La firma para la definición de un Atributo: </li></ul></ul><ul><ul><li>[ModifAcceso] TipoDato nombreAtributo; </li></ul></ul><ul><ul><ul><li>[ModifAcceso ] : public, private, protected ó default (cuando no se pone, pero como atributo de clase) </li></ul></ul></ul><ul><ul><ul><li>TipoDato : Primitivo ó de Referencia </li></ul></ul></ul><ul><ul><li>Los atributos definidos dentro de un método (atributo local) no tienen modificador de acceso, están disponibles únicamente durante la ejecución del método. </li></ul></ul>
  31. 31. Descripción de una Clase <ul><li>DEFINICIÓN DE LOS ATRIBUTOS </li></ul><ul><ul><li>El nombreAtributo debe cumplir con las siguientes reglas: </li></ul></ul><ul><ul><ul><li>Debe comenzar con una letra minúscula. </li></ul></ul></ul><ul><ul><ul><li>Si contiene más de una palabra, éstas se separarán con una letra mayúscula. </li></ul></ul></ul><ul><ul><ul><li>No debe tener espacios, ni caracteres especiales como el %, #, $, &. </li></ul></ul></ul><ul><ul><ul><li>No debe ser una palabra reservada (Keyword) de java. </li></ul></ul></ul>
  32. 32. Descripción de una Clase <ul><li>DEFINICIÓN DEL CONSTRUCTOR </li></ul><ul><ul><li>La definición del método Constructor puede ser incluida dentro de la definición de la clase. </li></ul></ul><ul><ul><li>El Constructor contiene tareas e instrucciones necesarias que deben ejecutarse al momento de la creación de un Objeto, como por ejemplo, la inicialización de los atributos. </li></ul></ul><ul><ul><li>El Constructor puede ser llamado a través del operador new . </li></ul></ul><ul><ul><ul><li>Ejemplo: </li></ul></ul></ul><ul><ul><ul><ul><li>Libro pensandoJava = new Libro(); </li></ul></ul></ul></ul><ul><ul><li>pensandoJava es una variable de Referencia. </li></ul></ul>
  33. 33. Descripción de una Clase <ul><li>DEFINICIÓN DEL CONSTRUCTOR </li></ul><ul><ul><li>Toda clase java tiene al menos un constructor, llamado Constructor vacío , nulo ó por defecto , y es creado automáticamente por la JVM al momento de compilar la clase, no necesita ser escrito. </li></ul></ul><ul><ul><li>Se pueden definir constructores personalizados, tomando en cuenta las siguientes reglas: </li></ul></ul><ul><ul><ul><li>El nombre del constructor debe ser exactamente el mismo de nombre de la clase. </li></ul></ul></ul><ul><ul><ul><li>El constructor no devuelve nada, ni siquiera void(). </li></ul></ul></ul><ul><ul><ul><li>Los constructores se pueden sobrecargar (Modificando la lista de argumentos). </li></ul></ul></ul><ul><ul><ul><li>Si se define un constructor personalizado, el constructor por defecto desaparece y debe ser escrito si queremos utilizarlo. </li></ul></ul></ul>
  34. 34. Descripción de una Clase <ul><li>DEFINICIÓN DE LOS METODOS </li></ul><ul><ul><li>Los métodos definen el comportamiento de un Objeto, es decir lo que el Objeto puede hacer . </li></ul></ul><ul><ul><li>Consisten en un conjunto de tareas que se ejecutan paso a paso, de manera procedimental. </li></ul></ul><ul><ul><li>En java, los métodos de una Clase, se implementan a través de funciones. </li></ul></ul><ul><ul><li>Los métodos deben tener: </li></ul></ul><ul><ul><ul><li>Un nombre significativo que describa lo que hace. </li></ul></ul></ul><ul><ul><ul><li>Información requerida para realizar la tarea (Argumentos). </li></ul></ul></ul><ul><ul><ul><li>Un valor de retorno para mostrar los resultados (Tipo de Dato Primitivo , de Referencia ó void cuando no retorna nada). </li></ul></ul></ul>
  35. 35. Descripción de una Clase <ul><li>DEFINICIÓN DE LOS METODOS </li></ul><ul><ul><li>Firma para la definición de un Método: </li></ul></ul><ul><li>[ModifAcceso] TipoRetorno nombreMetodo(TipoDato param1, TipoDato param2,……,…){ </li></ul><ul><li> //Definición del Método </li></ul><ul><li>} </li></ul><ul><ul><ul><li>[ModifAcceso ] : public, private, protected ó default </li></ul></ul></ul><ul><ul><ul><li>TipoRetorno : Primitivo, de Referencia ó void </li></ul></ul></ul><ul><ul><ul><li>nombreMetodo : reglas: </li></ul></ul></ul><ul><ul><ul><ul><li>Debe ser un verbo y comenzar con una letra minúscula. </li></ul></ul></ul></ul><ul><ul><ul><ul><li>Se pueden agregar otras palabras, separándolas con una letra mayúscula. </li></ul></ul></ul></ul><ul><ul><ul><ul><li>No debe tener espacios, ni guiones bajos . </li></ul></ul></ul></ul><ul><ul><ul><ul><li>No debe ser una palabra reservada (Keyword) de java </li></ul></ul></ul></ul><ul><ul><ul><li>TipoDato : Tipo de Dato Primitivo ó de Referencia del argumento </li></ul></ul></ul><ul><ul><ul><li>param1, param2 : La lista de argumentos. </li></ul></ul></ul>
  36. 36. Descripción de una Clase <ul><li>DEFINICIÓN DE LOS METODOS </li></ul><ul><ul><li>Tipos de Métodos: </li></ul></ul><ul><ul><ul><li>Mutadores: Cambian el estado de un Objeto (set) </li></ul></ul></ul><ul><ul><ul><li>Accesores: Devuelven el estado de un Objeto (get) </li></ul></ul></ul><ul><ul><ul><li>Que requieren argumentos: metodo(param1, param2, .. , ..) </li></ul></ul></ul><ul><ul><ul><li>Que no requieren argumentos: metodo( ) </li></ul></ul></ul><ul><ul><ul><li>Métodos que retornan valores: Dentro de su definición utilizan la palabra reservada return para devolver un Tipo de Dato Primitivo o de Referencia. Ej: métodos get </li></ul></ul></ul><ul><ul><ul><li>Métodos que no retornan valores: Métodos que tienen como tipo de retorno void , no necesitan un return . Ej: métodos set </li></ul></ul></ul>
  37. 37. Descripción de una Clase <ul><li>DEFINICIÓN DE LOS METODOS </li></ul><ul><ul><li>El método main </li></ul></ul><ul><ul><li>public static void main(String args[ ]){ </li></ul></ul><ul><ul><li>} </li></ul></ul><ul><ul><li>Contiene las instrucciones para ejecutar una aplicación Java. Es conocido como el punto de entrada a una aplicación. </li></ul></ul><ul><ul><li>Toda aplicación Java debe tener al menos un método main. </li></ul></ul><ul><ul><li>Es un método estático, lo cual significa que no está asociado a un objeto en particular, y se lo puede invocar sin la necesidad de crear una instancia de la Clase. </li></ul></ul>
  38. 38. Descripción de una Clase <ul><li>DEFINICIÓN DE LOS METODOS </li></ul><ul><ul><li>Métodos Sobrecargados </li></ul></ul><ul><ul><li>Son métodos dentro de la misma clase, que tienen las siguientes características: </li></ul></ul><ul><ul><ul><li>Tienen el mismo nombre </li></ul></ul></ul><ul><ul><ul><li>La lista de argumentos debe ser diferente, ya sea en los tipos de datos o en el número de argumentos. Sólo modificar el orden de los argumentos NO es sobrecarga. </li></ul></ul></ul><ul><ul><ul><li>El valor devuelto puede o no ser el mismo, siempre y cuando la lista de argumentos sea diferente en los métodos sobrecargados. Lo contrario llevará a un error de compilación. </li></ul></ul></ul>
  39. 39. Descripción de una Clase <ul><li>Laboratorio 2.0: Opcional </li></ul><ul><ul><li>Definir la siguiente Clase utilizando BlueJ </li></ul></ul>
  40. 40. Descripción de una Clase <ul><li>Laboratorio 2.1: Creación de Clases basadas en diagramas UML </li></ul><ul><ul><li>En el método main, utilizar ambos constructores de la clase Estudiante, para crear 2 estudiantes s1 y s2 en el primer caso, setear los valores con los métodos set(), y en ambos casos imprimir los resultados utilizando los métodos get(). </li></ul></ul>
  41. 41. Introducción a la Clase System <ul><li>Clase utilizada para realizar tareas propias del Sistema, como por ejemplo la entrada y salida de datos (A través de sus atributos in , out ). </li></ul><ul><li>Se encuentra dentro del paquete java.lang. </li></ul><ul><li>System.out.println() – Para desplegar textos </li></ul><ul><li>System.gc() – Para hacer la llamada al Garbage Collector </li></ul>
  42. 42. Referencias Bibliográficas <ul><li>“ Pensando en Java” - “Thinking in Java” </li></ul><ul><li>ECKEL, Bruce. </li></ul><ul><li>Prentice Hall, Madrid 2002 </li></ul><ul><li>“ Cómo programar en Java”. </li></ul><ul><li>DEITEL & DEITEL. </li></ul><ul><li>Pearson - Prentice Hall. 2004 </li></ul><ul><li>” Introducción a la Programación orientada a objetos con JAVA”. </li></ul><ul><li>WU, C. Thomas. </li></ul><ul><li>McGraw-Hill. 2001 </li></ul>

×