SlideShare una empresa de Scribd logo
POO
PROGRAAMACIÓN ORIENTADA A OBJETOS




                BORIS SALLEG ROYERO
                ING. DE SISTEMAS DE INFORMACIÓN
POO
• POO o Programación Orientada a Objetos es una manera de
  interpretar la programación basándose en el mundo real y
  transportándolo al mundo virtual, tomando representaciones de
  objetos reales tales como sus características o propiedades, para
  hacerlos interactuar con el usuario tal como se haría realmente.
ABSTRACCION DEL MUNDO REAL
DEFINICION DE OBJETO
Introduccion a la poo
HERENCIA
• Es la Cualidad mas importante de la
  OOP.
• Es un mecanismo mediante el cual                         VehiculoDeMotor
                                                               A ttributes
  se puede crear una nueva clase                        + Cilindrada : int
                                                        + NumeroDeRueda : int
  partiendo de una existente, se dice                         Operations
                                                        + acelelar() : void
  que la nueva clase hereda las
  características   de    la    clase
  existente, aunque se le puede                Coches                            Motos
                                              A ttributes                      A ttributes
  añadir mas capacidades o modificar    + NumeroDePuertas : int          + TipoCarenado : string
                                              Operations                       Operations
  las que tiene.
Conceptos básicos: HERENCIA
• Generalización / Especialización
• Los objetos “heredan” las características de la clase.
• Las clases pueden heredar de otras clases.
   – Extensión.
   – Restricción.
                                      Electrodoméstico
   – Modificación.                   tensión
                                     consumo
• Utilidad:                          Conectar
   – Abstracción.                    Desconectar

   – Reutilización.

                   Lavadora
                   Hormiga         Televisor        Plancha
                  capacidad       numCanales        vapor
Ejemplo de herencia
                                             Objeto material




                       Animal                                     Planta

                       Mamífero                                    Flor



 Perro                 Humano                Ornitorrinco


         Comerciante    Artista   Dentista



         Florista



Relámpago   Flo          Beth      Ken          Pepe           flores de la abuela
ENCAPSULAMIENTO
• Es el ocultamiento de la Funcionalidad interna de sus
  operaciones, de otros objetos y del mundo exterior.
ENCAPSULAMIENTO
• Principio que establece que los atributos propios de un objeto
  no deben ser visibles desde otros objetos
   – Deben ser declarados como privados
• Permite abstraer al resto del mundo de la complejidad de la
  implementación interna
• Permite exponer el estado del objeto sólo a través del
  comportamiento que le hayamos definido mediante miembros
  públicos
• ¿Por qué es útil?
   – Punto de Control/Validación
   – Mejor respuesta ante los Cambios
ENCAPSULAMIENTO
public class persona
                                      ENCAPSULAMIENTO
{
      private String Nombre;
        private String Apellido;
        private int Edad;
        private String Ciudad;
        private int id;

          public persona()
          {         }
          public String getNombre()
      {
                 return Nombre;
      }
      public void setNombre(String Nombre)
     {
         this.Nombre = Nombre;
     }
     public String getApellido()
      {
          return Apellido;
      }
     public void setApellido(String Apellido)
     {
          this.Apellido = Apellido;
      }
public int getEdad()
     {
          return Edad;
     }
     public void setEdad(int Edad)
      {
          this.Edad = Edad;
      }
     public String getCiudad()
      {
          return Ciudad;
      }
     public void setCiudad(String Ciudad)
     {
          this.Ciudad = Ciudad;
      }
     public int getId()
     {
          return id;
     }
POLIMORFISMO
• En ocasiones una acción tiene el mismo nombre en diferentes
  Clases o en la misma, pero realizara una operación diferente.
• En la OOP cada Clase “SABE” como realizar cada operación.
• Es la posibilidad de que dos Métodos implementen distintas
  acciones, aun teniendo el mismo nombre, dependiendo del
  Objeto que lo ejecuta o de los parámetros que recibe.
POLIMORFISMO
• La Sobrecarga es un tipo especial del Polimorfismo.
• Varios Métodos con el mismo nombre, siempre y cuando que
  el tipo de parámetros que recibe o el numero sean diferentes.
POLIMORFISMO
• Es la propiedad que tienen los objetos de permitir invocar
  genéricamente     un    comportamiento      (método)     cuya
  implementación será delegada al objeto correspondiente recién
  en tiempo de ejecución
• El polimorfismo tiende a existir en las relaciones de
  herencia, pero no siempre es así.
Polimorfismo - Ejemplo
• La definición del método reside en la clase base
• La implementación del método reside en la clase derivada
• La invocación es resuelta al momento de ejecución

                                                    Transporte
                                                      Avanzar
                                                      Frenar
       Transporte
         Avanzar

         Frenar                                         Transporte
                                                           Avanzar
                                                           Frenar


                                       Transporte
                                         Avanzar
                                         Frenar
Conceptos básicos: POLIMORFISMO
   • Ej: Operación “Abrir”
              Puerta       Cuenta           Puerto            Plazo

             Abrir()      Abrir()          Abrir()          Abrir()

     Permite al modelador hablar el lenguaje del cliente.
     Evita asignar identificadores artificiosos para distinguir las
      operaciones.
     Contribuye a la reutilización de código.
     Ej: Operación “Enchufar”


                                              TomaDeCorriente
                                             tensión
                                             Enchufar(e:Electrodoméstico)


Tema 5. El Paradigma
                                                                       18
Orientado a Objetos.
POLIMORFISMO
public persona()
{
}
public persona(String Nombre, String Apellido)
{
  this.Nombre= Nombre;
    this. Apellido= Apellido;
}
public persona(String Nombre, String Apellido, int Edad)
{
  this.Nombre= Nombre;
  this. Apellido= Apellido;
  this.Edad= Edad;

}
CLASE
• Una clase es una agrupación de datos (variables o
   campos) y de funciones (métodos) que operan
   sobre esos datos.
• Una clase es una plantilla que define las variables
   y los métodos que son comunes para todos los
   objetos de un cierto tipo.
public class Classname
{ ... // definición de variables y
       métodos
}
CLASE




¿Qué es una clase?
Una clase es una plantilla para crear objetos.
La definición de una clase especifica las operaciones y los atributos para todas las
instancias de la clase(objetos).
CONCEPTO DE INSTANCIA

• Una de las características más útiles de Java es
  la posibilidad de crear clases e instancias a
  partir de estas clases.
• class Perro es la declaración de la clase Perro a
  partir de la cual podremos crear varias
  instancias.
clase Perro
Inicio
    //Variables de instancia de Perro.
       Cadena nombre;
       Cadena color;
        Entero edad;
      //Constructor de Perro.

    publico Perro(Cadena nombre, Cadena color, Entero edad)
   Inicio
       Perro.nombre = nombre;
       Perro.color = color;
       Perro.edad = edad;
    Fin
    //Métodos de Perro.
    Publico comer()
  Inicio
        Escriba(nombre + " comiendo.");
   Fin
   publico morder()
   Inicio
      Escriba(nombre + " mordiendo.");
    Fin
Fin//Fin clase Perro

Para crear ahora objetos de la clase Perro es tan sencillo como:

dogo = nuevo Perro(Koky, Negro, 2);
danes= nuevo Perro(Rififi, Café,4);

Ahorrandonos escribir mucho código
class Perro
{
   //Variables de instancia de Perro.
      String nombre;
      String color;
       int edad;
     //Constructor de Perro.

      public Perro(String nombre, String color, int edad)
  {
        this.nombre = nombre;
        this.color = color;
        this.edad = edad;
      }
      //Métodos de Perro.
      public void comer()
  {
        System.out.println(nombre + " comiendo.");
    }
    public void morder()
    {
       System.out.println(nombre + " mordiendo.");
     }
}//Fin clase Perro

dogo = new Perro(Koky, Negro, 2);
danes= new Perro(Rififi, Café,4);

Nota:
Ejemplo de implementación en Java.
DIFERENCIA ENTRE CLASE E INSTANCIAS DE OBJETO
DIFERENCIA ENTRE CLASE E INSTANCIAS DE OBJETO
INSTANCIACION
Introduccion a la poo
BIBLIOGRAFIA


• http://luis.izqui.org/resources/ProgOrientada
  Objetos.pdf

Más contenido relacionado

PDF
Programación 3: Clases y objetos en Java
PDF
Orientacion A Objetos Para Dummies
PPT
03 requerimientos
PPT
Diagrama de Colaboración
PPT
Modelos de dominio
PPTX
Programación Orientada a Objetos - Unidad 2: clases y objetos
Programación 3: Clases y objetos en Java
Orientacion A Objetos Para Dummies
03 requerimientos
Diagrama de Colaboración
Modelos de dominio
Programación Orientada a Objetos - Unidad 2: clases y objetos

La actualidad más candente (20)

PPTX
diagrama de colaboracion
PPTX
Metodologías para el desarrollo de aplicaciones móviles
PPTX
Programacion Orientada a Objetos
PPTX
Diagramas De Caso De Uso
PPTX
Analisis Y DiseñO Orientado A Objetos
PPTX
Presentacion planificación de proyecto de software
PPTX
Constructores en Java
 
PPT
Polimorfismo en Java
PDF
Persistencia de datos en Java
PDF
Elementos de diagramas de secuencias
PDF
Programación Orientada a Objetos en Java - Parte I 2015
PDF
8.Clases y objetos Java
PDF
Unidad No. 5 - Agentes Inteligentes
PDF
Metodologia Diseño Web
PDF
Casos de uso
PPTX
Programación Orientada a Objetos - atributos y métodos
PPTX
Programacion Orientada a Eventos
DOCX
Cuestionario
PDF
11 Curso de POO en java - métodos constructores y toString()
PPTX
Presentación diseño sistemas sm
diagrama de colaboracion
Metodologías para el desarrollo de aplicaciones móviles
Programacion Orientada a Objetos
Diagramas De Caso De Uso
Analisis Y DiseñO Orientado A Objetos
Presentacion planificación de proyecto de software
Constructores en Java
 
Polimorfismo en Java
Persistencia de datos en Java
Elementos de diagramas de secuencias
Programación Orientada a Objetos en Java - Parte I 2015
8.Clases y objetos Java
Unidad No. 5 - Agentes Inteligentes
Metodologia Diseño Web
Casos de uso
Programación Orientada a Objetos - atributos y métodos
Programacion Orientada a Eventos
Cuestionario
11 Curso de POO en java - métodos constructores y toString()
Presentación diseño sistemas sm
Publicidad

Similar a Introduccion a la poo (20)

DOCX
Investigacion v unidad
PPTX
Fundamentos de POODE CAIDAD DEL SOFTWARE.pptx
PPTX
POO_7_Conceptos Avanzados de POO-PARTE-1.pptx
PPT
PDF
Semana 3 Herencia en Java
PDF
Programación java 2
PDF
Introducción a Swift
PPT
PPTX
Lenguaje de programación orientada a objetos
PPT
Net1 oop vbnet
PPT
Poo
PPTX
JAVA_BASICO_modo_consola_introduccion.pptx
PDF
Programming oriented to objects
PDF
Programación Orientada a Objetos
PPT
programacion orientada a objetos
PDF
Java morld cap2 [CURSO JAVA]
PPTX
4-Unidad 1. Paradigma de la Programación-Orientación a Objetos
PDF
Desarrollo de Aplicaciones Web II - Sesión 05 - Evolución de los lenguajes PO...
PDF
Javascript - 2014
PDF
Polimorfismo2015c1
Investigacion v unidad
Fundamentos de POODE CAIDAD DEL SOFTWARE.pptx
POO_7_Conceptos Avanzados de POO-PARTE-1.pptx
Semana 3 Herencia en Java
Programación java 2
Introducción a Swift
Lenguaje de programación orientada a objetos
Net1 oop vbnet
Poo
JAVA_BASICO_modo_consola_introduccion.pptx
Programming oriented to objects
Programación Orientada a Objetos
programacion orientada a objetos
Java morld cap2 [CURSO JAVA]
4-Unidad 1. Paradigma de la Programación-Orientación a Objetos
Desarrollo de Aplicaciones Web II - Sesión 05 - Evolución de los lenguajes PO...
Javascript - 2014
Polimorfismo2015c1
Publicidad

Más de Boris Salleg (20)

DOCX
01. capitulo 2 6 validacion de datos
DOCX
03. prueba de conocimiento inicial excel basico terminada
PPTX
01. contenido curso internet basico
PPTX
Contenido curso excel basico
DOCX
Compromiso academico servicios de internet
DOCX
Compromiso academico excel basico
DOCX
Taller #1 institucion educativa las margaritas
PPT
Arboles
DOCX
Introduccion base de datos
DOCX
Explicacion metodologia 3 capas y base de datos, proyecto de ejemplo jsp
PPTX
Conexion bd en java y api necesaria
DOCX
Condicionales
DOCX
Algoritmo variables, constantes, tipos de datos y asignacion
DOCX
Algoritmos, programas, compiladores y lenguajes de programacion
DOCX
Algoritmo de listas simples completo
DOCX
Introduccion base de datos con MYSQL
DOCX
Practica utilizacion de beans en jsp
DOCX
Utilizacion de beans en jsp
DOCX
Practica eventos
DOCX
Clase event
01. capitulo 2 6 validacion de datos
03. prueba de conocimiento inicial excel basico terminada
01. contenido curso internet basico
Contenido curso excel basico
Compromiso academico servicios de internet
Compromiso academico excel basico
Taller #1 institucion educativa las margaritas
Arboles
Introduccion base de datos
Explicacion metodologia 3 capas y base de datos, proyecto de ejemplo jsp
Conexion bd en java y api necesaria
Condicionales
Algoritmo variables, constantes, tipos de datos y asignacion
Algoritmos, programas, compiladores y lenguajes de programacion
Algoritmo de listas simples completo
Introduccion base de datos con MYSQL
Practica utilizacion de beans en jsp
Utilizacion de beans en jsp
Practica eventos
Clase event

Último (20)

PDF
La Inteligencia Emocional - Fabian Goleman TE4 Ccesa007.pdf
PDF
Tomo 1 de biologia gratis ultra plusenmas
PDF
Atencion prenatal. Ginecologia y obsetricia
PDF
el - LIBRO-PACTO-EDUCATIVO-GLOBAL-OIEC.pdf
PDF
PFB-MANUAL-PRUEBA-FUNCIONES-BASICAS-pdf.pdf
DOC
Manual de Convivencia 2025 actualizado a las normas vigentes
DOCX
Informe_practica pre Final.docxddadssasdddddddddddddddddddddddddddddddddddddddd
PDF
Escuelas Desarmando una mirada subjetiva a la educación
PDF
ACERTIJO Súper Círculo y la clave contra el Malvado Señor de las Formas. Por ...
PPTX
MATEMATICAS GEOMETRICA USO TRANSPORTADOR
PDF
Nadie puede salvarte excepto Tú - Madame Rouge Ccesa007.pdf
PDF
Los hombres son de Marte - Las mujeres de Venus Ccesa007.pdf
DOCX
PLAN DE CASTELLANO 2021 actualizado a la normativa
PDF
Esc. Sab. Lección 7. El pan y el agua de vida.pdf
PDF
MATERIAL DIDÁCTICO 2023 SELECCIÓN 1_REFORZAMIENTO 1° BIMESTRE.pdf
PDF
2.0 Introduccion a processing, y como obtenerlo
PPTX
LAS MIGRACIONES E INVASIONES Y EL INICIO EDAD MEDIA
PDF
Iniciación Al Aprendizaje Basado En Proyectos ABP Ccesa007.pdf
PDF
Ernst Cassirer - Antropologia Filosofica.pdf
DOCX
V UNIDAD - PRIMER GRADO. del mes de agosto
La Inteligencia Emocional - Fabian Goleman TE4 Ccesa007.pdf
Tomo 1 de biologia gratis ultra plusenmas
Atencion prenatal. Ginecologia y obsetricia
el - LIBRO-PACTO-EDUCATIVO-GLOBAL-OIEC.pdf
PFB-MANUAL-PRUEBA-FUNCIONES-BASICAS-pdf.pdf
Manual de Convivencia 2025 actualizado a las normas vigentes
Informe_practica pre Final.docxddadssasdddddddddddddddddddddddddddddddddddddddd
Escuelas Desarmando una mirada subjetiva a la educación
ACERTIJO Súper Círculo y la clave contra el Malvado Señor de las Formas. Por ...
MATEMATICAS GEOMETRICA USO TRANSPORTADOR
Nadie puede salvarte excepto Tú - Madame Rouge Ccesa007.pdf
Los hombres son de Marte - Las mujeres de Venus Ccesa007.pdf
PLAN DE CASTELLANO 2021 actualizado a la normativa
Esc. Sab. Lección 7. El pan y el agua de vida.pdf
MATERIAL DIDÁCTICO 2023 SELECCIÓN 1_REFORZAMIENTO 1° BIMESTRE.pdf
2.0 Introduccion a processing, y como obtenerlo
LAS MIGRACIONES E INVASIONES Y EL INICIO EDAD MEDIA
Iniciación Al Aprendizaje Basado En Proyectos ABP Ccesa007.pdf
Ernst Cassirer - Antropologia Filosofica.pdf
V UNIDAD - PRIMER GRADO. del mes de agosto

Introduccion a la poo

  • 1. POO PROGRAAMACIÓN ORIENTADA A OBJETOS BORIS SALLEG ROYERO ING. DE SISTEMAS DE INFORMACIÓN
  • 2. POO • POO o Programación Orientada a Objetos es una manera de interpretar la programación basándose en el mundo real y transportándolo al mundo virtual, tomando representaciones de objetos reales tales como sus características o propiedades, para hacerlos interactuar con el usuario tal como se haría realmente.
  • 6. HERENCIA • Es la Cualidad mas importante de la OOP. • Es un mecanismo mediante el cual VehiculoDeMotor A ttributes se puede crear una nueva clase + Cilindrada : int + NumeroDeRueda : int partiendo de una existente, se dice Operations + acelelar() : void que la nueva clase hereda las características de la clase existente, aunque se le puede Coches Motos A ttributes A ttributes añadir mas capacidades o modificar + NumeroDePuertas : int + TipoCarenado : string Operations Operations las que tiene.
  • 7. Conceptos básicos: HERENCIA • Generalización / Especialización • Los objetos “heredan” las características de la clase. • Las clases pueden heredar de otras clases. – Extensión. – Restricción. Electrodoméstico – Modificación. tensión consumo • Utilidad: Conectar – Abstracción. Desconectar – Reutilización. Lavadora Hormiga Televisor Plancha capacidad numCanales vapor
  • 8. Ejemplo de herencia Objeto material Animal Planta Mamífero Flor Perro Humano Ornitorrinco Comerciante Artista Dentista Florista Relámpago Flo Beth Ken Pepe flores de la abuela
  • 9. ENCAPSULAMIENTO • Es el ocultamiento de la Funcionalidad interna de sus operaciones, de otros objetos y del mundo exterior.
  • 10. ENCAPSULAMIENTO • Principio que establece que los atributos propios de un objeto no deben ser visibles desde otros objetos – Deben ser declarados como privados • Permite abstraer al resto del mundo de la complejidad de la implementación interna • Permite exponer el estado del objeto sólo a través del comportamiento que le hayamos definido mediante miembros públicos • ¿Por qué es útil? – Punto de Control/Validación – Mejor respuesta ante los Cambios
  • 12. public class persona ENCAPSULAMIENTO { private String Nombre; private String Apellido; private int Edad; private String Ciudad; private int id; public persona() { } public String getNombre() { return Nombre; } public void setNombre(String Nombre) { this.Nombre = Nombre; } public String getApellido() { return Apellido; } public void setApellido(String Apellido) { this.Apellido = Apellido; }
  • 13. public int getEdad() { return Edad; } public void setEdad(int Edad) { this.Edad = Edad; } public String getCiudad() { return Ciudad; } public void setCiudad(String Ciudad) { this.Ciudad = Ciudad; } public int getId() { return id; }
  • 14. POLIMORFISMO • En ocasiones una acción tiene el mismo nombre en diferentes Clases o en la misma, pero realizara una operación diferente. • En la OOP cada Clase “SABE” como realizar cada operación. • Es la posibilidad de que dos Métodos implementen distintas acciones, aun teniendo el mismo nombre, dependiendo del Objeto que lo ejecuta o de los parámetros que recibe.
  • 15. POLIMORFISMO • La Sobrecarga es un tipo especial del Polimorfismo. • Varios Métodos con el mismo nombre, siempre y cuando que el tipo de parámetros que recibe o el numero sean diferentes.
  • 16. POLIMORFISMO • Es la propiedad que tienen los objetos de permitir invocar genéricamente un comportamiento (método) cuya implementación será delegada al objeto correspondiente recién en tiempo de ejecución • El polimorfismo tiende a existir en las relaciones de herencia, pero no siempre es así.
  • 17. Polimorfismo - Ejemplo • La definición del método reside en la clase base • La implementación del método reside en la clase derivada • La invocación es resuelta al momento de ejecución Transporte Avanzar Frenar Transporte Avanzar Frenar Transporte Avanzar Frenar Transporte Avanzar Frenar
  • 18. Conceptos básicos: POLIMORFISMO • Ej: Operación “Abrir” Puerta Cuenta Puerto Plazo Abrir() Abrir() Abrir() Abrir()  Permite al modelador hablar el lenguaje del cliente.  Evita asignar identificadores artificiosos para distinguir las operaciones.  Contribuye a la reutilización de código.  Ej: Operación “Enchufar” TomaDeCorriente tensión Enchufar(e:Electrodoméstico) Tema 5. El Paradigma 18 Orientado a Objetos.
  • 19. POLIMORFISMO public persona() { } public persona(String Nombre, String Apellido) { this.Nombre= Nombre; this. Apellido= Apellido; } public persona(String Nombre, String Apellido, int Edad) { this.Nombre= Nombre; this. Apellido= Apellido; this.Edad= Edad; }
  • 20. CLASE • Una clase es una agrupación de datos (variables o campos) y de funciones (métodos) que operan sobre esos datos. • Una clase es una plantilla que define las variables y los métodos que son comunes para todos los objetos de un cierto tipo. public class Classname { ... // definición de variables y métodos }
  • 21. CLASE ¿Qué es una clase? Una clase es una plantilla para crear objetos. La definición de una clase especifica las operaciones y los atributos para todas las instancias de la clase(objetos).
  • 22. CONCEPTO DE INSTANCIA • Una de las características más útiles de Java es la posibilidad de crear clases e instancias a partir de estas clases. • class Perro es la declaración de la clase Perro a partir de la cual podremos crear varias instancias.
  • 23. clase Perro Inicio //Variables de instancia de Perro. Cadena nombre; Cadena color; Entero edad; //Constructor de Perro. publico Perro(Cadena nombre, Cadena color, Entero edad) Inicio Perro.nombre = nombre; Perro.color = color; Perro.edad = edad; Fin //Métodos de Perro. Publico comer() Inicio Escriba(nombre + " comiendo."); Fin publico morder() Inicio Escriba(nombre + " mordiendo."); Fin Fin//Fin clase Perro Para crear ahora objetos de la clase Perro es tan sencillo como: dogo = nuevo Perro(Koky, Negro, 2); danes= nuevo Perro(Rififi, Café,4); Ahorrandonos escribir mucho código
  • 24. class Perro { //Variables de instancia de Perro. String nombre; String color; int edad; //Constructor de Perro. public Perro(String nombre, String color, int edad) { this.nombre = nombre; this.color = color; this.edad = edad; } //Métodos de Perro. public void comer() { System.out.println(nombre + " comiendo."); } public void morder() { System.out.println(nombre + " mordiendo."); } }//Fin clase Perro dogo = new Perro(Koky, Negro, 2); danes= new Perro(Rififi, Café,4); Nota: Ejemplo de implementación en Java.
  • 25. DIFERENCIA ENTRE CLASE E INSTANCIAS DE OBJETO
  • 26. DIFERENCIA ENTRE CLASE E INSTANCIAS DE OBJETO