Professional Documents
Culture Documents
POO
POO o Programacin Orientada a Objetos es una manera de interpretar la programacin basndose en el mundo real y transportndolo al mundo virtual, tomando representaciones de objetos reales tales como sus caractersticas o propiedades, para hacerlos interactuar con el usuario tal como se hara realmente.
DEFINICION DE OBJETO
HERENCIA
Es la Cualidad mas importante de la OOP. Es un mecanismo mediante el cual se puede crear una nueva clase partiendo de una existente, se dice que la nueva clase hereda las caractersticas de la clase existente, aunque se le puede aadir mas capacidades o modificar las que tiene.
VehiculoDeMotor
A ttributes + Cilindrada : int + NumeroDeRueda : int Operations + acelelar() : void
Coches
A ttributes + NumeroDePuertas : int Operations
Motos
A ttributes + TipoCarenado : string Operations
Utilidad:
Abstraccin. Reutilizacin.
Lavadora Hormiga capacidad
Televisor numCanales
Plancha vapor
Ejemplo de herencia
Objeto material
Animal Mamfero
Planta Flor
Perro
Humano
Ornitorrinco
Comerciante
Artista
Dentista
Florista
Relmpago
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 implementacin interna Permite exponer el estado del objeto slo a travs del comportamiento que le hayamos definido mediante miembros pblicos Por qu es til? Punto de Control/Validacin Mejor respuesta ante los Cambios
ENCAPSULAMIENTO
public class persona { private String Nombre; private String Apellido; private int Edad; private String Ciudad; private int id; public persona() { } public String getNombre() { return Nombre;
ENCAPSULAMIENTO
} 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 accin tiene el mismo nombre en diferentes Clases o en la misma, pero realizara una operacin diferente. En la OOP cada Clase SABE como realizar cada operacin. Es la posibilidad de que dos Mtodos implementen distintas acciones, aun teniendo el mismo nombre, dependiendo del Objeto que lo ejecuta o de los parmetros que recibe.
POLIMORFISMO
La Sobrecarga es un tipo especial del Polimorfismo.
Varios Mtodos con el mismo nombre, siempre y cuando que el tipo de parmetros que recibe o el numero sean diferentes.
POLIMORFISMO
Es la propiedad que tienen los objetos de permitir invocar genricamente un comportamiento (mtodo) cuya implementacin ser delegada al objeto correspondiente recin en tiempo de ejecucin
El polimorfismo tiende a existir en las relaciones de herencia, pero no siempre es as.
Polimorfismo - Ejemplo
La definicin del mtodo reside en la clase base La implementacin del mtodo reside en la clase derivada La invocacin es resuelta al momento de ejecucin
Transporte
Avanzar
Transporte
Avanzar Frenar
Frenar
Transporte
Avanzar Frenar
Transporte
Avanzar Frenar
Cuenta
Abrir()
Puerto Abrir()
Plazo
Abrir()
Permite al modelador hablar el lenguaje del cliente. Evita asignar identificadores artificiosos para distinguir las operaciones. Contribuye a la reutilizacin de cdigo. Ej: Operacin Enchufar
TomaDeCorriente tensin Enchufar(e:Electrodomstico)
Tema 5. El Paradigma Orientado a Objetos.
18
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 agrupacin de datos (variables o campos) y de funciones (mtodos) que operan sobre esos datos. Una clase es una plantilla que define las variables y los mtodos que son comunes para todos los objetos de un cierto tipo. public class Classname { ... // definicin de variables y mtodos }
CLASE
Qu es una clase? Una clase es una plantilla para crear objetos. La definicin de una clase especifica las operaciones y los atributos para todas las instancias de la clase(objetos).
CONCEPTO DE INSTANCIA
Una de las caractersticas ms tiles de Java es la posibilidad de crear clases e instancias a partir de estas clases. class Perro es la declaracin 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 //Mtodos 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);
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; } //Mtodos 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 implementacin en Java.
INSTANCIACION
BIBLIOGRAFIA
http://luis.izqui.org/resources/ProgOrientada Objetos.pdf