Kaka
Fundamentos de la informática 4. Programación orientada a objetos con Java
Contenido
Introducción La programación orientada a objetos Programación Java Introspección Utilidades de Java
Programación orientada a objetos con Java
2
Introducción
Análisis y diseño orientado a objetos La programaciónorientada a objetos es una técnica de análisis y diseño que se enfoca en los elementos de un sistema, sus atributos y responsabilidades El modelo abstracto está formado de clases. Una clase describe a un conjunto de objetos que comparte los mismos atributos, comportamiento y semántica Un objeto es una instancia de una clase
Programación orientada a objetos con Java
3
Programación orientadaa objetos
Análisis y diseño orientado a objetos Las clases representan un esquema simplificado de la casuística de un problema determinado Para diseñar un sistema orientado a objetos es necesario responder las siguientes preguntas
¿Cuáles son los elementos tangibles de un sistema? ¿Cuáles son sus atributos? ¿Cuáles son sus responsabilidades? ¿Cómo se relacionan los elementos del sistema? ¿Quéobjeto debe “saber”...? ¿Qué objeto debe “hacer”...?
Programación orientada a objetos con Java
4
Programación orientada a objetos
Conceptos básicos Encapsulación Herencia Polimorfismo
Programación orientada a objetos con Java
5
Programación orientada a objetos
Encapsulación La encapsulación consiste en formar un “paquete” con los atributos (variables) y el comportamiento(métodos) de un objeto Los métodos forman la membrana exterior de un objeto y “esconden” los detalles de implementación al usuario
Programación orientada a objetos con Java
6
Programación orientada a objetos
Encapsulación La encapsulación hace que un sistema sea más fácil de comprender y facilita el mantenimiento de una aplicación
Atributos
Comportamiento (métodos)
m1
Programaciónorientada a objetos con Java
7
Programación orientada a objetos
Herencia La herencia es la capacidad de una clase para definirse en términos de otra clase y “heredar” atributos y responsabilidades de la clase de orden superior
Bicicleta
Superclase
Subclases
Bicicleta de montaña
Programación orientada a objetos con Java
Bicicleta de carreras
Tándem
8
Programaciónorientada a objetos
Polimorfismo El polimorfismo permite que distintos objetos pertenecientes a una misma clase “respondan” de diferentes formas a un mismo mensaje El polimorfismo permite modificar el comportamiento de un método en cada subclase. En este ejemplo, la superclase mascota tiene las subclases gato, pato y perro. El método “saludar” cada subclase es diferente
Hola
Miau
CuacGuau
En este ejemplo cada tipo de mascota “saluda” de forma distinta
Programación orientada a objetos con Java 9
Programación orientada a objetos
Encapsulación, herencia y polimorfismo La reutilización de código es una de las grandes ventajas de la programación orientada a objetos Reduce el tiempo de desarrollo de aplicaciones e incrementa la productividad de los ingenieros de softwareReutilización de clases Diseño de una nueva clase a partir de otra (herencia)
Programación orientada a objetos con Java
10
Programación orientada a objetos
Diagramas de clases En UML una clase se representa como un rectángulo dividido en tres partes: el nombre de la clase, sus atributos y métodos. Las clases abstractas se identifican por la letra cursiva Los métodos de una clase seespecifican indicando el tipo de acceso (+, -, #), el nombre, la lista de parámetros y el tipo que devuelve
+ Acceso público - Acceso privado # Acceso protegido
Programación orientada a objetos con Java
11
Programación orientada a objetos
Diagramas de clases El diagrama de una clase muestra el nombre de la clase, sus atributos y métodos
Programación orientada a objetos con Java
12...
Regístrate para leer el documento completo.