Programación Orientada A Objetos
Programación Orientada A Objetos
Programación Orientada A Objetos
OBJETOS
2
Introducción
Nuevo Paradigma:
Programación Orientada a Objetos (POO)
3
Programación Procedimental
Procedimiento 1
D
A
Procedimiento 2 T
O
S
Procedimiento 3
4
DATOS DATOS
Métodos Métodos
DATOS DATOS
Métodos Métodos
5
POO
POO
La visión de Objetos:
Mesas
Sillas
Computadores
Autos
Cuentas bancarias
Partidos de fútbol
Perros, etc
7
POO
METODOLOGÍA
9
Modelamiento
Los problemas
Modelar que se desea
resolver
con base en
Relevantes y
Entidades tangibles en el
problema
10
Abstracción
Ejemplo
Alumnos Profesores
Administr. Docente
Salas
Asignaturas
12
POO
Conceptos de la POO
Clase
Clase
Instancias-Objetos
Instancias-Objetos
EJEMPLO:
Suponer que existe la clase Vehículo
Atributos
Marca
Año
Color
Patente, etc.
19
Métodos
Principios de la POO
Encapsulamiento
Herencia
Polimorfismo
21
ENCAPSULAMIENTO
Abstracción de Datos
22
Encapsulamiento
Encapsulamiento
Encapsulamiento
Métodos:
Depositar
Girar
Conocer el saldo
25
HERENCIA
Organización jerárquica
26
Herencia
Herencia
Persona
Nombre
Dirección
RUT
POLIMORFISMO
29
Polimorfismo
Polimorfismo
Ejemplo 1:
Polimorfismo
Ejemplo 2:
MENSAJE
OBJETOS RESULTADOS
Sucesor
'A' 'B'
3 4
OBJETOS
33
Objetos
En la POO se dice que un objeto: "integra
datos y algoritmos"
En la programación estructurada, variables y
funciones están separadas
POO Procedural
Clase Tipo
Objeto Variable
Instanciación de objetos Declaración de variables
34
Objetos
Cada objeto es responsable de inicializarse y
destruirse en forma correcta
Un objeto consta de:
Tiempo de vida
Atributos
Métodos
Estado
Comportamiento
35
Estado de un objeto
Comportamiento de un objeto
Clases
Clases
Métodos Métodos
Depositar Depositar
Girar Girar
Consultar Consultar
MENSAJES
44
Mensaje
Mensajes
Mensaje
Recepcionista
Paciente Médico
MÉTODOS
47
Métodos
Métodos
Ejemplos:
Depositar
Girar
Consultar
RESUMEN
50
Mensajes y métodos
Clases y ejemplares
Clases y métodos
Clases y métodos
Clases y métodos
Clases y métodos
Objetos
Clases
Métodos
Parámetros
Tipos de datos
Hola Mundo
Atributos
Marca
Color
Potencia
Velocidad máxima
Velocidad Carburante
Aceleración
Capacidad de
combustible
constantes
variables
Métodos (u operaciones)
Arrancar motor
Parar motor
Acelerar
Frenar
Girar a la derecha (grados)
Girar a la izquierda (grados)
Cambiar marcha (nueva marcha)
método argumentos
o
parámetros
Clases
objetos de la clase
Coche
public: // etc.
void arrancar() { }; // fin de definición de la clase Coche
// instrucciones para arrancar el coche
};
Clases
Un programa en POO
main() {
Coche *c=new Coche(); // crea un objeto Coche
c-> arrancar // utiliza el objeto
// ...
dispose(c); // elimina el objeto
}
Un programa en Java
class Programa {
public static void main(String args[]) {
Coche c=new Coche(); // crea un objeto Coche
c.arrancar(); // utiliza el objeto
// ...
} // se elimina el objeto cuando nadie lo puede utilizar
// ¡ automáticamente !
}
Instalar BlueJ
Se puede encontrar en http://www.bluej.org/
Crear objetos
Seleccionar un objeto y ejecutar new ClaseObjeto()
Ver atributos de objetos
Invocar métodos en objetos
Ver el código de las clases de objetos
Crear un dibujo combinando varios objetos
Bibliografía