Conceptos POORepaso
Conceptos POOPensar en ObjetosCiclo de vida de los ObjetosDiseño de buen software Java
Términos básicos en POOClaseObjetoAtributoMétodoHerenciaEncapsulamientoPolimorfismo
ClasePrácticamente es una plantilla que describe los tipos de estado y comportamiento que pueden tener los objetos de este tipo.
ObjetoEn 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.
AtributoUn atributo es una características del objeto. Con esto, es posible darle un cierto estado al objeto creado.
MétodoLos 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 ObjetosPensar 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 objetosCreación:Reserva de memoria  Carro c = new Carro (…)Inicialización de atributos  ConstructoresManipulaciónAcceso a atributos  c.modeloInvocación de métodos  c.getModelo()“Destrucción”Al liberar la memoria  garbagecollectorVer ejemplo
Ejemplo de garbagecollector
¿Alguna Pregunta?20
Gracias21http://www.javatutoriales.com/Java Tutoriales en Facebook

Conceptos poo (presentación1)

  • 1.
  • 2.
    Conceptos POOPensar enObjetosCiclo de vida de los ObjetosDiseño de buen software Java
  • 3.
    Términos básicos enPOOClaseObjetoAtributoMétodoHerenciaEncapsulamientoPolimorfismo
  • 4.
    ClasePrácticamente es unaplantilla que describe los tipos de estado y comportamiento que pueden tener los objetos de este tipo.
  • 5.
    ObjetoEn tiempo deejecució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.
    AtributoUn atributo esuna características del objeto. Con esto, es posible darle un cierto estado al objeto creado.
  • 7.
    MétodoLos métodos serefieren 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, permiteextender 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 noconoce 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 hijopuede 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ísticapermite 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, elusuario 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.
  • 14.
    Polimorfismo (1)Característica deJava 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, permiteolvidarse de ciertas características específicas de varios objetos para centrarse en lo que tengan en común.
  • 16.
    Pensar en ObjetosPensaren 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.
  • 18.
    Ciclo de vidade los objetosCreación:Reserva de memoria  Carro c = new Carro (…)Inicialización de atributos  ConstructoresManipulaciónAcceso a atributos  c.modeloInvocación de métodos  c.getModelo()“Destrucción”Al liberar la memoria  garbagecollectorVer ejemplo
  • 19.
  • 20.
  • 21.