• No se han encontrado resultados

Programación Orientada a Objetos (OOP): Clases y Objetos Introducción a

N/A
N/A
Protected

Academic year: 2021

Share "Programación Orientada a Objetos (OOP): Clases y Objetos Introducción a"

Copied!
25
0
0

Texto completo

(1)

Introducción a

Programación Orientada a Objetos (OOP):

Clases y Objetos

(2)

Definición

Clase es la representación abstracta (modelo) de una entidad del mundo

La clase especifica los atributos (propiedades) y métodos

(comportamientos)

El objeto es una Instancia de un Clase (representación real de la clase)

A los atributos del objeto se les asigna un valor.

01/02/2013 ING. PEDRO BELTRÁN CANESSA

(3)
(4)

Atributos

(5)

Atributos

(6)

Comportamiento

(7)

Ejemplo de Clase (Java)

(8)

Características Fundamentales

Un objeto no es un dato simple, sino que puede contener en su interior cierto

número de atributos bien estructurados.

Cada objeto no es un ente aislado, sino que forma parte de una organización

jerárquica o de otro tipo

(9)

Estructura

Un objeto puede considerarse como una especie de cápsula dividida en tres partes:

PROPIEDADES

METODOS

RELACIONES

(10)

Propiedades

Las propiedades distinguen un objeto

determinado de los restantes que forman parte de la misma organización y tiene

valores que dependen de la propiedad de que se trate. Las propiedades de un

objeto pueden ser heredadas a sus

descendientes en la organización (a veces

llamados atributos)

(11)

Propiedades (Cont.)

La diferencia con las "variables” de la programación estructurada es que las propiedades se pueden

heredar de unos objetos a otros. En consecuencia, un objeto puede tener una propiedad de maneras

diferentes:

Propiedades propias. Asociadas directamente al objeto.

Propiedades heredadas. Están definidas en un objeto diferente, antepasado de éste (padre,"abuelo", etc.). A veces estas propiedades se llaman propiedades

miembro porque el objeto las posee por el simple hecho de ser miembro de una clase.

(12)

Métodos

Los métodos son las operaciones que pueden realizarse sobre el objeto, que normalmente

estarán incorporados en forma de programas (código) que el objeto es capaz de ejecutar y que también pone a disposición de sus

descendientes a través de la herencia. Los

objetos se comunican con el exterior por medio de mensajes (Métodos) estos establecen su

‘interfaz’ para el mundo

(13)

Métodos (Tipos)

Métodos propios. Están incluidos dentro de la cápsula del objeto.

Métodos heredados. Están definidos en un objeto diferente, antepasado de éste (padre,"abuelo", etc.). A veces estos

métodos se llaman métodos miembro

porque el objeto los posee por el simple

hecho de ser miembro de una clase.

(14)

Relaciones

Las relaciones permiten que el objeto se inserte en la organización y están

formadas esencialmente por punteros a otros objetos.

Es un

Parte de

Tiene un

(15)

Relación Es un..

Relación de especialización

“Un objeto contiene la definición de otro

y añade comportamientos adicionales”

(16)

Ejemplo

class Point { attributes:

int x, y methods:

setX(int newX) getX()

setY(int newY) getY()

}

class Circle { attributes:

int x, y, radius methods:

setX(int newX) getX()

setY(int newY) getY()

setRadius(newRadius) getRadius() }

(17)

Relación Parte de

Objetos compuestos por otros, relación de contenencia

un objeto es parte de otro cuando

conserva su independencia.

(18)

Ejemplo

class Logo { attributes:

Circle circle

Triangle triangle methods:

set(Point where) }

(19)

Relación Tiene un

Esta relación es justamente la inversa de

la relación parte-de

(20)

Encapsulamiento

Los objetos son inaccesibles, e impiden que otros objetos, los usuarios, o incluso los programadores conozcan cómo está distribuida la información o qué

información hay disponible. Esta

propiedad de los objetos se denomina

ocultación de la información.

(21)

Encapsulamiento (cont.)

La idea del encapsulamiento es garantizar independencia entre la forma de hacer las cosas y los servicios que se ofrecen al

exterior, de esta forma se garantiza el

intercambio de componentes sin afectar el

comportamiento de un sistema

(22)

Herencia

Es un tipo especial de relación (es un)

donde un objeto comparte la definición de otro y especializa su comportamiento

Es el mecanismo que permite que un

clase A herede propiedades de una clase

B. Decimos "A hereda de B". Objetos de la

clase A tienen así acceso a los atributos y

métodos de la clase B sin necesidad de

(23)

Herencia

class Circle extends Point { // atrributes:

int radius // methods:

setRadius(int newRadius) getRadius()

}

(24)

Superclase/Subclase

Si la clase A hereda de la clase B,

entonces B es la superclase de A. A es

subclase de B.

(25)

Polimorfismo

El polimorfismo no es otra cosa que la

posibilidad de construir varios métodos con el mismo nombre, pero con relación a la clase a la que pertenece cada uno, con comportamientos diferentes. Esto conlleva la habilidad de enviar un mismo mensaje a objetos de clases

diferentes. Estos objetos recibirían el mismo mensaje global pero responderían a él de formas diferentes

Referencias

Documento similar

Lo que se pierde en extensión se gana en profundidad, se nos dice. Ello es verdad si se admite que esta profundidad es limitada incluso desde el punto de vista funcional. ¿Por qué se

 • En el caso de un objeto de clase derivada, primero se invoca al constructor de la clase base y luego al de la clase derivada (que puede llamar a constructores de objetos miembro).

Se llega así a una doctrina de la autonomía en el ejercicio de los derechos que es, en mi opinión, cuanto menos paradójica: el paternalismo sería siempre una discriminación cuando

Hay un segundo requisito para que la expresión esté bien formada: los valores proporcionados como parámetros (que denominaremos parámetros reales) deben ser del mismo

Concretando estas posibilidades, el panorama de los estudios fi- lológicos en la primera mitad del siglo xx, cuando se inicia la semiolo- gía generando la gran renovación en el

En la implementación final, el programa principal ha hecho uso de ambas variables para comunicarse con el subprograma, pasando el número a comprobar a través de la

En este sentido, los mencionados Autos prosiguen en el mismo Funda- mento señalando que «desconocer e inadmitir como norma generalizada los escritos de denuncias presentadas por

expresando con naturalidad sus sentim ientos y experiencias al ir m adurando. Una herm ana que había vivido durante varios años lejos de su hogar se vio