SlideShare une entreprise Scribd logo
1  sur  21
Conceptos POO Repaso
Conceptos POO Pensar en Objetos Ciclo de vida de los Objetos Diseño de buen software Java
Términos básicos en POO Clase Objeto Atributo Método Herencia Encapsulamiento Polimorfismo
Clase Prácticamente es una plantilla que describe los tipos de estado y comportamiento que pueden tener los objetos de este tipo.
Objeto En tiempo de ejecución, cuando la máquina virtual de java (JVM) encuentra la palabra reservada “new”, usará la clase apropiada para crear una instancia con sus respectivas características.
Atributo Un atributo es una características del objeto. Con esto, es posible darle un cierto estado al objeto creado.
Método Los métodos se refieren al comportamiento que tomará el objeto. Aquí es donde se almacena la lógica de la clase, proporcionando la funcionalidad que tendrá el objeto.
Herencia(1) En Java, permite extender la funcionalidad y características de una clase a otra. Permite el reúso de código. Tú puedes definir una clase (super clase, clase padre, de cierta manera abstracta) y posteriormente extenderla con clases más específicas (subclase, clase hijo).
Herencia(2) El padre no conoce nada acerca de sus hijos, sin embargo sus hijos deben definir quién es su papá (con la palabra reservada “extends”).
Herencia(3) Una clase hijo puede tener acceso a los atributos y métodos de la clase padre; incluso puede sobre-escribir los métodos (siempre y cuando no sean privados).
Encapsulamiento (1) Esta característica permite protección del código, flexibilidad y fácil mantenimiento. Consiste en la ocultación del estado de un objeto de forma directa, de manera que sólo se tiene acceso mediante sus métodos. De esta forma, los detalles de implementación permanecen ocultos a las personas que usan las clases, evitando modificaciones o accesos indebidos.
Encapsulamiento (2) Además, el usuario de la clase no se tiene que preocupar de cómo están implementando los métodos y propiedades, concentrándose sólo en cómo debe usarlos. ¿Qué debe hacerse? Variables de instancia privadas. Métodos públicos para el acceso. Convención de JavaBean getters y setters.
Encapsulamiento (3) Ejemplo de encapsulamiento:
Polimorfismo (1) Característica de Java que permite tomar como algo igual a un nivel superior dos cosas que son diferentes a un nivel más bajo. Por ejemplo: Animal, Gato y Perro. Los dos últimos son animales a un nivel alto de abstracción (Animal) pero diferentes a un nivel inferior
Polimorfismo (2) Esto, permite olvidarse de ciertas características específicas de varios objetos para centrarse en lo que tengan en común.
Pensar en Objetos Pensar en términos de objetos, es muy parecido a como lo haríamos en la vida real. Por ejemplo, pensemos en un coche para tratar de visualizarlo en un esquema de POO.
Ciclo de vida de los objetos Creación: Reserva de memoria  Carro c = new Carro (…) Inicialización de atributos  Constructores Manipulación Acceso a atributos  c.modelo Invocación de métodos  c.getModelo() “Destrucción” Al liberar la memoria  garbagecollector Ver ejemplo
Ejemplo de garbagecollector
¿Alguna Pregunta? 20
Gracias 21 http://www.javatutoriales.com/ Java Tutoriales en Facebook

Contenu connexe

Tendances

Clases y objetos de java
Clases y objetos de javaClases y objetos de java
Clases y objetos de java
innovalabcun
 
Tipos de atributos y tipos de relaciones
Tipos de atributos y tipos de relacionesTipos de atributos y tipos de relaciones
Tipos de atributos y tipos de relaciones
basilioj
 
Fundamentos de Programación Orientada a Objetos
Fundamentos de Programación Orientada a ObjetosFundamentos de Programación Orientada a Objetos
Fundamentos de Programación Orientada a Objetos
Marines Ahuanlla
 

Tendances (20)

02 python Programación orientada a objetos y funcional
02 python Programación orientada a objetos y funcional02 python Programación orientada a objetos y funcional
02 python Programación orientada a objetos y funcional
 
Programación 3: listas enlazadas
Programación 3: listas enlazadasProgramación 3: listas enlazadas
Programación 3: listas enlazadas
 
Patrón de diseño Modelo-Vista-Controlador (MVC)
Patrón de diseño Modelo-Vista-Controlador (MVC)Patrón de diseño Modelo-Vista-Controlador (MVC)
Patrón de diseño Modelo-Vista-Controlador (MVC)
 
Diagramas clases presentacion
Diagramas clases presentacionDiagramas clases presentacion
Diagramas clases presentacion
 
Clases y objetos en Java
Clases y objetos en JavaClases y objetos en Java
Clases y objetos en Java
 
Presentacion de clases en c#
Presentacion de clases en c#Presentacion de clases en c#
Presentacion de clases en c#
 
Ejercicios uml
Ejercicios umlEjercicios uml
Ejercicios uml
 
Poo 3 herencia
Poo 3 herenciaPoo 3 herencia
Poo 3 herencia
 
Programacion orientada a objetos - unidad 3 herencia
Programacion orientada a objetos - unidad 3 herenciaProgramacion orientada a objetos - unidad 3 herencia
Programacion orientada a objetos - unidad 3 herencia
 
Clases y objetos de java
Clases y objetos de javaClases y objetos de java
Clases y objetos de java
 
Seguridad en Base de Datos
Seguridad en Base de DatosSeguridad en Base de Datos
Seguridad en Base de Datos
 
Modelo V
Modelo VModelo V
Modelo V
 
Qué es la poo
Qué es la pooQué es la poo
Qué es la poo
 
POO: Herencia, Abstraccion y Polimorfismo
POO: Herencia, Abstraccion y PolimorfismoPOO: Herencia, Abstraccion y Polimorfismo
POO: Herencia, Abstraccion y Polimorfismo
 
Tipos de atributos y tipos de relaciones
Tipos de atributos y tipos de relacionesTipos de atributos y tipos de relaciones
Tipos de atributos y tipos de relaciones
 
Diagrama de clases
Diagrama de clasesDiagrama de clases
Diagrama de clases
 
Fundamentos de Programación Orientada a Objetos
Fundamentos de Programación Orientada a ObjetosFundamentos de Programación Orientada a Objetos
Fundamentos de Programación Orientada a Objetos
 
Programación Orientada a Objetos - Resumen
Programación Orientada a Objetos - ResumenProgramación Orientada a Objetos - Resumen
Programación Orientada a Objetos - Resumen
 
Cuestionario
CuestionarioCuestionario
Cuestionario
 
Java colecciones
Java coleccionesJava colecciones
Java colecciones
 

En vedette

Conceptos avanzados oo (presentación 4)
Conceptos avanzados oo (presentación 4)Conceptos avanzados oo (presentación 4)
Conceptos avanzados oo (presentación 4)
programadorjavablog
 
Fundamentos del análisis orientado a objetos
Fundamentos del análisis orientado a objetosFundamentos del análisis orientado a objetos
Fundamentos del análisis orientado a objetos
Eduardo Galindo
 
3 poo abstraccion modula..herencia
3 poo abstraccion modula..herencia3 poo abstraccion modula..herencia
3 poo abstraccion modula..herencia
Pedro Alvarez
 
Trabajo de diseño de sistemas orientados a objetos
Trabajo de diseño de sistemas orientados a objetosTrabajo de diseño de sistemas orientados a objetos
Trabajo de diseño de sistemas orientados a objetos
douglimar89
 
programacion orientada a objetos
programacion orientada a objetosprogramacion orientada a objetos
programacion orientada a objetos
jent46
 
Características de los medios de transmision de datos
Características de los medios de transmision de datosCaracterísticas de los medios de transmision de datos
Características de los medios de transmision de datos
Blanca Rodriguez
 
Analisis Y DiseñO Orientado A Objetos
Analisis Y DiseñO Orientado A ObjetosAnalisis Y DiseñO Orientado A Objetos
Analisis Y DiseñO Orientado A Objetos
yoiner santiago
 
Diseño Orientado a Objetos
Diseño Orientado a ObjetosDiseño Orientado a Objetos
Diseño Orientado a Objetos
MegaMono
 

En vedette (17)

Conceptos avanzados oo (presentación 4)
Conceptos avanzados oo (presentación 4)Conceptos avanzados oo (presentación 4)
Conceptos avanzados oo (presentación 4)
 
Odmg
OdmgOdmg
Odmg
 
Herencia y polimorfismo
Herencia y polimorfismoHerencia y polimorfismo
Herencia y polimorfismo
 
Programacion Orientada a Objetos IE
Programacion Orientada a Objetos IEProgramacion Orientada a Objetos IE
Programacion Orientada a Objetos IE
 
ODMG
ODMGODMG
ODMG
 
Fundamentos del análisis orientado a objetos
Fundamentos del análisis orientado a objetosFundamentos del análisis orientado a objetos
Fundamentos del análisis orientado a objetos
 
3 poo abstraccion modula..herencia
3 poo abstraccion modula..herencia3 poo abstraccion modula..herencia
3 poo abstraccion modula..herencia
 
Trabajo de diseño de sistemas orientados a objetos
Trabajo de diseño de sistemas orientados a objetosTrabajo de diseño de sistemas orientados a objetos
Trabajo de diseño de sistemas orientados a objetos
 
java (clases,herencias,encapsulamiento,.. )
java (clases,herencias,encapsulamiento,.. )java (clases,herencias,encapsulamiento,.. )
java (clases,herencias,encapsulamiento,.. )
 
programacion orientada a objetos
programacion orientada a objetosprogramacion orientada a objetos
programacion orientada a objetos
 
Ventajas y desventajas de los medios de transmisión
Ventajas y desventajas de los medios de transmisiónVentajas y desventajas de los medios de transmisión
Ventajas y desventajas de los medios de transmisión
 
Características de los medios de transmision de datos
Características de los medios de transmision de datosCaracterísticas de los medios de transmision de datos
Características de los medios de transmision de datos
 
Conceptos basicos POO
Conceptos basicos POOConceptos basicos POO
Conceptos basicos POO
 
Analisis Y DiseñO Orientado A Objetos
Analisis Y DiseñO Orientado A ObjetosAnalisis Y DiseñO Orientado A Objetos
Analisis Y DiseñO Orientado A Objetos
 
programacion orientada a objetos
programacion orientada a objetosprogramacion orientada a objetos
programacion orientada a objetos
 
Diseño Orientado a Objetos
Diseño Orientado a ObjetosDiseño Orientado a Objetos
Diseño Orientado a Objetos
 
POO
POOPOO
POO
 

Similaire à Conceptos poo (presentación1)

Historia java ruben rodriguez
Historia java ruben rodriguezHistoria java ruben rodriguez
Historia java ruben rodriguez
coruniversitec
 
Programaciom avanzada orientada a objetos
Programaciom avanzada orientada a objetosProgramaciom avanzada orientada a objetos
Programaciom avanzada orientada a objetos
Jonathan Macías
 
Conceptos de programación orientada a objetos
Conceptos de programación orientada a objetosConceptos de programación orientada a objetos
Conceptos de programación orientada a objetos
Gabriel Mondragón
 

Similaire à Conceptos poo (presentación1) (20)

[ES] Programación orientada a objeto con java
[ES] Programación orientada a objeto con java[ES] Programación orientada a objeto con java
[ES] Programación orientada a objeto con java
 
FPJUCE - Capitulo2
FPJUCE - Capitulo2FPJUCE - Capitulo2
FPJUCE - Capitulo2
 
Historia java ruben rodriguez
Historia java ruben rodriguezHistoria java ruben rodriguez
Historia java ruben rodriguez
 
Historia java ruben
Historia java rubenHistoria java ruben
Historia java ruben
 
Cuatro elementos claves para entender poo en java
Cuatro elementos claves para entender poo en javaCuatro elementos claves para entender poo en java
Cuatro elementos claves para entender poo en java
 
Introduccionjava
IntroduccionjavaIntroduccionjava
Introduccionjava
 
Analisis de la PPO
Analisis de la PPOAnalisis de la PPO
Analisis de la PPO
 
Programaciom avanzada orientada a objetos
Programaciom avanzada orientada a objetosProgramaciom avanzada orientada a objetos
Programaciom avanzada orientada a objetos
 
Clase 2
Clase 2 Clase 2
Clase 2
 
Programacion orientada a objetos
Programacion orientada a objetos Programacion orientada a objetos
Programacion orientada a objetos
 
Programación orientada a objetos
Programación orientada a objetos Programación orientada a objetos
Programación orientada a objetos
 
Lenguaje de Programación Orientada a Objetos
Lenguaje  de  Programación  Orientada  a Objetos Lenguaje  de  Programación  Orientada  a Objetos
Lenguaje de Programación Orientada a Objetos
 
Analisis orientado a objetos
Analisis orientado a objetosAnalisis orientado a objetos
Analisis orientado a objetos
 
Termino de programacion
Termino de programacionTermino de programacion
Termino de programacion
 
Conceptos de programación orientada a objetos
Conceptos de programación orientada a objetosConceptos de programación orientada a objetos
Conceptos de programación orientada a objetos
 
Asignacion2
Asignacion2Asignacion2
Asignacion2
 
Programacion orientada a_objetos
Programacion orientada a_objetosProgramacion orientada a_objetos
Programacion orientada a_objetos
 
PROGRAMACIÓN ORIENTADA A OBJETOS
PROGRAMACIÓN ORIENTADA A OBJETOSPROGRAMACIÓN ORIENTADA A OBJETOS
PROGRAMACIÓN ORIENTADA A OBJETOS
 
Curso Java Inicial 4 Poo En Java
Curso Java Inicial   4 Poo En JavaCurso Java Inicial   4 Poo En Java
Curso Java Inicial 4 Poo En Java
 
Prog.orientada a objeto
Prog.orientada a objetoProg.orientada a objeto
Prog.orientada a objeto
 

Plus de programadorjavablog

Patrones de diseño(presentación 7)
Patrones de diseño(presentación 7)Patrones de diseño(presentación 7)
Patrones de diseño(presentación 7)
programadorjavablog
 
Conceptos de código limpio (presentación 5)
Conceptos de código limpio (presentación 5)Conceptos de código limpio (presentación 5)
Conceptos de código limpio (presentación 5)
programadorjavablog
 
Curso scjp 30 navegacion de archivos e io
Curso scjp 30   navegacion de archivos e ioCurso scjp 30   navegacion de archivos e io
Curso scjp 30 navegacion de archivos e io
programadorjavablog
 
Curso scjp 4 declaracion de clases
Curso scjp 4   declaracion de clasesCurso scjp 4   declaracion de clases
Curso scjp 4 declaracion de clases
programadorjavablog
 
Curso scjp 3 identificadores y control de acceso
Curso scjp 3   identificadores y control de accesoCurso scjp 3   identificadores y control de acceso
Curso scjp 3 identificadores y control de acceso
programadorjavablog
 
Curso scjp 2 recordatorio de java
Curso scjp 2   recordatorio de javaCurso scjp 2   recordatorio de java
Curso scjp 2 recordatorio de java
programadorjavablog
 

Plus de programadorjavablog (20)

Hibernate - Relaciones
Hibernate - RelacionesHibernate - Relaciones
Hibernate - Relaciones
 
Hibernate - Introducción
Hibernate - IntroducciónHibernate - Introducción
Hibernate - Introducción
 
Patrones de diseño(presentación 7)
Patrones de diseño(presentación 7)Patrones de diseño(presentación 7)
Patrones de diseño(presentación 7)
 
Uml (presentación 6)
Uml (presentación 6)Uml (presentación 6)
Uml (presentación 6)
 
Conceptos de código limpio (presentación 5)
Conceptos de código limpio (presentación 5)Conceptos de código limpio (presentación 5)
Conceptos de código limpio (presentación 5)
 
Java 5 se (presentación3)
Java 5 se (presentación3)Java 5 se (presentación3)
Java 5 se (presentación3)
 
Lenguaje java5 (presentación2)
Lenguaje java5 (presentación2)Lenguaje java5 (presentación2)
Lenguaje java5 (presentación2)
 
Curso scjp 30 navegacion de archivos e io
Curso scjp 30   navegacion de archivos e ioCurso scjp 30   navegacion de archivos e io
Curso scjp 30 navegacion de archivos e io
 
Curso scjp 30 navegacion de archivos e io
Curso scjp 30   navegacion de archivos e ioCurso scjp 30   navegacion de archivos e io
Curso scjp 30 navegacion de archivos e io
 
7iSF-4 test driver development
7iSF-4   test driver development7iSF-4   test driver development
7iSF-4 test driver development
 
7iSF-3 scrum
7iSF-3   scrum7iSF-3   scrum
7iSF-3 scrum
 
7iSF-2 rup
7iSF-2   rup7iSF-2   rup
7iSF-2 rup
 
7iSF-1 ingeniería de software
7iSF-1   ingeniería de software7iSF-1   ingeniería de software
7iSF-1 ingeniería de software
 
7iSF-6 temas extra
7iSF-6   temas extra7iSF-6   temas extra
7iSF-6 temas extra
 
7iSF-5 cmm
7iSF-5   cmm7iSF-5   cmm
7iSF-5 cmm
 
Curso scjp 4 declaracion de clases
Curso scjp 4   declaracion de clasesCurso scjp 4   declaracion de clases
Curso scjp 4 declaracion de clases
 
Curso scjp 3 identificadores y control de acceso
Curso scjp 3   identificadores y control de accesoCurso scjp 3   identificadores y control de acceso
Curso scjp 3 identificadores y control de acceso
 
Curso scjp 2 recordatorio de java
Curso scjp 2   recordatorio de javaCurso scjp 2   recordatorio de java
Curso scjp 2 recordatorio de java
 
ICEFaces 2.0
ICEFaces 2.0ICEFaces 2.0
ICEFaces 2.0
 
Html5
Html5Html5
Html5
 

Dernier

editorial de informática de los sueños.docx
editorial de informática de los sueños.docxeditorial de informática de los sueños.docx
editorial de informática de los sueños.docx
ssusere34b451
 

Dernier (20)

NIVEL DE MADUREZ TECNOLÓGICA (TRL).pptx
NIVEL DE  MADUREZ TECNOLÓGICA (TRL).pptxNIVEL DE  MADUREZ TECNOLÓGICA (TRL).pptx
NIVEL DE MADUREZ TECNOLÓGICA (TRL).pptx
 
Sistemas distribuidos de redes de computadores en un entorno virtual de apren...
Sistemas distribuidos de redes de computadores en un entorno virtual de apren...Sistemas distribuidos de redes de computadores en un entorno virtual de apren...
Sistemas distribuidos de redes de computadores en un entorno virtual de apren...
 
Pons, A. - El desorden digital - guia para historiadores y humanistas [2013].pdf
Pons, A. - El desorden digital - guia para historiadores y humanistas [2013].pdfPons, A. - El desorden digital - guia para historiadores y humanistas [2013].pdf
Pons, A. - El desorden digital - guia para historiadores y humanistas [2013].pdf
 
¡Mira mi nuevo diseño hecho en Canva!.pdf
¡Mira mi nuevo diseño hecho en Canva!.pdf¡Mira mi nuevo diseño hecho en Canva!.pdf
¡Mira mi nuevo diseño hecho en Canva!.pdf
 
Uso de las TIC en la vida cotidiana .
Uso de las TIC en la vida cotidiana       .Uso de las TIC en la vida cotidiana       .
Uso de las TIC en la vida cotidiana .
 
Introducción a la robótica con arduino..pptx
Introducción a la robótica con arduino..pptxIntroducción a la robótica con arduino..pptx
Introducción a la robótica con arduino..pptx
 
Inteligencia Artificial para usuarios nivel inicial
Inteligencia Artificial para usuarios nivel inicialInteligencia Artificial para usuarios nivel inicial
Inteligencia Artificial para usuarios nivel inicial
 
manual-de-oleohidraulica-industrial-vickers.pdf
manual-de-oleohidraulica-industrial-vickers.pdfmanual-de-oleohidraulica-industrial-vickers.pdf
manual-de-oleohidraulica-industrial-vickers.pdf
 
Navegadores de internet - Nuevas Tecnologías de la Información y la Comunicación
Navegadores de internet - Nuevas Tecnologías de la Información y la ComunicaciónNavegadores de internet - Nuevas Tecnologías de la Información y la Comunicación
Navegadores de internet - Nuevas Tecnologías de la Información y la Comunicación
 
Licencias para el Uso y el Desarrollo de Software
Licencias para el Uso y el Desarrollo de SoftwareLicencias para el Uso y el Desarrollo de Software
Licencias para el Uso y el Desarrollo de Software
 
JORNADA INTELIGENCIA ARTIFICIAL Y REALIDAD VIRTUAL
JORNADA INTELIGENCIA ARTIFICIAL Y REALIDAD VIRTUALJORNADA INTELIGENCIA ARTIFICIAL Y REALIDAD VIRTUAL
JORNADA INTELIGENCIA ARTIFICIAL Y REALIDAD VIRTUAL
 
VelderrainPerez_Paola_M1C1G63-097.pptx. LAS TiC
VelderrainPerez_Paola_M1C1G63-097.pptx. LAS TiCVelderrainPerez_Paola_M1C1G63-097.pptx. LAS TiC
VelderrainPerez_Paola_M1C1G63-097.pptx. LAS TiC
 
CIBERSEGURIDAD Y SEGURIDAD INFORMATICA .
CIBERSEGURIDAD Y SEGURIDAD INFORMATICA .CIBERSEGURIDAD Y SEGURIDAD INFORMATICA .
CIBERSEGURIDAD Y SEGURIDAD INFORMATICA .
 
De Olmos Santiago_Dolores _ M1S3AI6.pptx
De Olmos Santiago_Dolores _ M1S3AI6.pptxDe Olmos Santiago_Dolores _ M1S3AI6.pptx
De Olmos Santiago_Dolores _ M1S3AI6.pptx
 
HerramientasInformaticas ¿Que es? - ¿Para que sirve? - Recomendaciones - Comp...
HerramientasInformaticas ¿Que es? - ¿Para que sirve? - Recomendaciones - Comp...HerramientasInformaticas ¿Que es? - ¿Para que sirve? - Recomendaciones - Comp...
HerramientasInformaticas ¿Que es? - ¿Para que sirve? - Recomendaciones - Comp...
 
editorial de informática de los sueños.docx
editorial de informática de los sueños.docxeditorial de informática de los sueños.docx
editorial de informática de los sueños.docx
 
Unidad 1- Historia y Evolucion de las computadoras.pdf
Unidad 1- Historia y Evolucion de las computadoras.pdfUnidad 1- Historia y Evolucion de las computadoras.pdf
Unidad 1- Historia y Evolucion de las computadoras.pdf
 
taller de tablas en word para estudiantes de secundaria
taller de tablas en word para estudiantes de secundariataller de tablas en word para estudiantes de secundaria
taller de tablas en word para estudiantes de secundaria
 
proyectos_social_y_socioproductivos _mapas_conceptuales
proyectos_social_y_socioproductivos _mapas_conceptualesproyectos_social_y_socioproductivos _mapas_conceptuales
proyectos_social_y_socioproductivos _mapas_conceptuales
 
TELECOMUNICACIONES- CAPITULO2: Modelo Osi ccna
TELECOMUNICACIONES- CAPITULO2: Modelo Osi ccnaTELECOMUNICACIONES- CAPITULO2: Modelo Osi ccna
TELECOMUNICACIONES- CAPITULO2: Modelo Osi ccna
 

Conceptos poo (presentación1)

  • 2. Conceptos POO Pensar en Objetos Ciclo de vida de los Objetos Diseño de buen software Java
  • 3. Términos básicos en POO Clase Objeto Atributo Método Herencia Encapsulamiento Polimorfismo
  • 4. Clase Prácticamente es una plantilla que describe los tipos de estado y comportamiento que pueden tener los objetos de este tipo.
  • 5. Objeto En tiempo de ejecución, cuando la máquina virtual de java (JVM) encuentra la palabra reservada “new”, usará la clase apropiada para crear una instancia con sus respectivas características.
  • 6. Atributo Un atributo es una características del objeto. Con esto, es posible darle un cierto estado al objeto creado.
  • 7. Método Los métodos se refieren al comportamiento que tomará el objeto. Aquí es donde se almacena la lógica de la clase, proporcionando la funcionalidad que tendrá el objeto.
  • 8. Herencia(1) En Java, permite extender la funcionalidad y características de una clase a otra. Permite el reúso de código. Tú puedes definir una clase (super clase, clase padre, de cierta manera abstracta) y posteriormente extenderla con clases más específicas (subclase, clase hijo).
  • 9. Herencia(2) El padre no conoce nada acerca de sus hijos, sin embargo sus hijos deben definir quién es su papá (con la palabra reservada “extends”).
  • 10. Herencia(3) Una clase hijo puede tener acceso a los atributos y métodos de la clase padre; incluso puede sobre-escribir los métodos (siempre y cuando no sean privados).
  • 11. Encapsulamiento (1) Esta característica permite protección del código, flexibilidad y fácil mantenimiento. Consiste en la ocultación del estado de un objeto de forma directa, de manera que sólo se tiene acceso mediante sus métodos. De esta forma, los detalles de implementación permanecen ocultos a las personas que usan las clases, evitando modificaciones o accesos indebidos.
  • 12. Encapsulamiento (2) Además, el usuario de la clase no se tiene que preocupar de cómo están implementando los métodos y propiedades, concentrándose sólo en cómo debe usarlos. ¿Qué debe hacerse? Variables de instancia privadas. Métodos públicos para el acceso. Convención de JavaBean getters y setters.
  • 13. Encapsulamiento (3) Ejemplo de encapsulamiento:
  • 14. Polimorfismo (1) Característica de Java que permite tomar como algo igual a un nivel superior dos cosas que son diferentes a un nivel más bajo. Por ejemplo: Animal, Gato y Perro. Los dos últimos son animales a un nivel alto de abstracción (Animal) pero diferentes a un nivel inferior
  • 15. Polimorfismo (2) Esto, permite olvidarse de ciertas características específicas de varios objetos para centrarse en lo que tengan en común.
  • 16. Pensar en Objetos Pensar en términos de objetos, es muy parecido a como lo haríamos en la vida real. Por ejemplo, pensemos en un coche para tratar de visualizarlo en un esquema de POO.
  • 17.
  • 18. Ciclo de vida de los objetos Creación: Reserva de memoria  Carro c = new Carro (…) Inicialización de atributos  Constructores Manipulación Acceso a atributos  c.modelo Invocación de métodos  c.getModelo() “Destrucción” Al liberar la memoria  garbagecollector Ver ejemplo
  • 21. Gracias 21 http://www.javatutoriales.com/ Java Tutoriales en Facebook