PROGRAMACI - PowerPoint PPT Presentation

1 / 24
About This Presentation
Title:

PROGRAMACI

Description:

... la clase hija a ade funcionalidad. En algunos casos la clase hija modifica ... La clase hija puede definir m todos con el mismo nombre que la clase paterna, ... – PowerPoint PPT presentation

Number of Views:29
Avg rating:3.0/5.0
Slides: 25
Provided by: usersD
Category:
Tags: programaci | hija | la

less

Transcript and Presenter's Notes

Title: PROGRAMACI


1
PROGRAMACIÓN AVANZADA
  • INTRODUCCIÓN A LA PROGRAMACIÓN ORIENTADA A OBJETOS

2
INTRODUCCION
  • Características de lenguaje orientado a objetos
  • Debe de estar basado en objetos
  • Debe de estar basado en clases
  • Debe de ser capaz de tener herencia.

3
OBJETOS
  • Programas
  • Algoritmos
  • Estructuras de datos
  • Objetos
  • Estructuras de datos y Programas
  • Pertenecen a una clase.

4
OBJETOS
  • Se definen mediante plantillas, características
    comunes Clases.
  • Encapsulación
  • Datos atributos
  • Algoritmos métodos
  • Interfase Para interactuar con el objeto.
    Mediante mensajes o peticiones de servicio, se
    requiere
  • Un objeto
  • Un método
  • Unos argumentos.

5
OBJETOS. EJEMPLO
  • Objeto Puerta
  • Atributos
  • Alto
  • Ancho
  • Tipo ...
  • Metodos
  • Abrir
  • Cerra
  • Interfase Abrir y Cerrar.
  • Ejemplo puerta1.Abrir(30). Objeto, método y
    argumento.

6
CLASES
  • Las clases son una descripción.
  • Agrupan datos y procedimientos comunes a un mismo
    concepto (concepto de puerta p.ej.).
  • Componente estática atributos.
  • Componente dinámica métodos.
  • Los objetos son instancias, ejemplos concretos,
    de una clase.
  • Los métodos manipulan los atributos.

7
OBJETOS Y CLASES
  • Instanciación, crear objetos de una clase
    definida
  • Creación de espacio de memoria para el objeto.
  • Inicialización de variables básicas.
  • Ligar ese espacio de memoria a una variable.
  • Se utilizan constructores, métodos de la clase
    con el mismo nombre que la clase.

8
OBJETOS Y CLASES
  • Las clases almacenan la lista de atributos.
  • Los objetos almacenan los valores de los
    atributos.
  • Dos metodos pueden llamarse igual y diferenciarse
    sólo en los parámetros que se les pasa
    sobrecarga.
  • Pueden haber atributos que valgan lo mismo para
    todos los objetos de la misma clase variables de
    clase, atributos de clase o atributos estáticos.

9
EJEMPLO NUMEROS COMPLEJOS
10
HERENCIA
  • Reutilización del software.
  • Utilizar clases organizadas mediante una
    estructura.
  • Clase padre, superclase.
  • Clase hija, subclase.
  • Los objetos de la clase hijapueden acceder a
    métodos y atributos de la clase padre.

11
HERENCIA
  • Reusabilidad del software (un software correcto)
  • Consistencia de la interfaz. Toda subclase hereda
    el mismo comportamiento.

12
HERENCIA
  • Ralentizan la velocidad de ejecución.
  • Grandes tamaños de programas.

13
HERENCIA
  • Como saber qué clase es superclase y qué clase
    es subclase?
  • Los datos y la funcionalidad de la clase hija
    (métodos y atributos) son un superconjunto de los
    de la clase padre.
  • Las superclases son más generales.

14
(No Transcript)
15
HERENCIA
  • Formas de hacer uso
  • Especialización Mamifero --gt Perro
  • Especificacición Formas --gt Cuadrado.
  • Clases Abstractas. Garantizar cierto interfaz.
  • Generalización Lo contrario de especialización.

16
(No Transcript)
17
HERENCIA
  • No siempre la clase hija añade funcionalidad.
  • En algunos casos la clase hija modifica alguna
    propiedad paterna.
  • La clase hija puede definir métodos con el mismo
    nombre que la clase paterna, anulando el método
    paterno. Reemplazo
  • Las clases hijas utilizan el método de la clase
    paterna más otras opciones propias de la clase
    hija. Refinamiento.

18
(No Transcript)
19
HERENCIA
  • Diferencias entre lenguajes
  • A nivel de herencia de atributos
  • Sin redefinición (se heredan, no modifican tipo)
  • Redefinición arbitraria ( se puede modificar
    tipo)
  • Redefinición con restricciones (subtipos)
  • Definiciones ocultas (no se heredan, no se
    manipulan)

20
HERENCIA
  • Diferencias entre lenguajes
  • A nivel de métodos
  • Redefinición arbitraria.
  • Redefinición con restricciones. (subtipos)

21
HERENCI A MULTIPLE
  • Herencia simple Especialización.
  • Herencia múltiple Combinación.
  • Conflictos
  • Conflictos por nombre.
  • Conflictos por precedencia.

22
(No Transcript)
23
(No Transcript)
24
POLIMORFISMO
  • Muchas formas, variable o argumento de función
    al que se le permite tener valores de tipos
    diferentes en el curso de la ejecución.
  • Sobrecarga ( operadores)
  • Coerción ( mezclar tipos )
  • Funciones abstractas.
  • Sobrecarga paramétrica.
Write a Comment
User Comments (0)
About PowerShow.com