CONCEPTOS PROGRAMACIÓN ORIENTADA A OBJETOS

CONCEPTOS PROGRAMACIÓN ORIENTADA A OBJETOS
Definición Programación Orientada a Objetos:
Paradigma de programación que plantea los programas en términos de clases de objetos y
relaciones entre estos. Está basada en varias técnicas, incluyendo la abstracción, herencia,
modularidad, polimorfismo y encapsulamiento.
Clase
Objeto 1
Objeto 2
Objeto 3
Características de la Programación Orientada a Objetos:
●
Objetos: Los objetos corresponden a cualquier cosa o concepto que haga parte del
mundo real, por ejemplo un carro, un perro, una silla, etc. Los objetos se distinguen
de otros objetos por tener una serie de características (atributos), y un conjunto de
operaciones o comportamientos (métodos) que se pueden realizar sobre esas
características.
Ejemplo: Carro
Características (atributos): color, modelo, marca, cilindrare.
Comportamientos (comportamiento): frenar, acelerar, apagar, encender, retroceder.
Ejemplo: Perro
Características (atributos): raza, color pelaje, altura, peso, color ojos, nombre.
Comportamientos (comportamiento): correr, ladrar, sentarse, pararse.
●
Clases: Son moldes o plantillas a través de las cuales se crean los objetos, las
clases definen los comportamientos y características comunes de los objetos. A partir
de una clase se pueden crear múltiples del mismo tipo.
Carro
color
modelo
marca
cilindrare
frenar
acelerar
apagar
encender
retroceder
●
Clase-Objetos: Existe una relación estrecha entre clase y objetos, a partir de una
clase se pueden crear objetos del mismo tipo.
Carro
color
modelo
marca
cilindrare
frenar
acelerar
apagar
encender
retroceder
Objeto 1
Objeto 2
Mazda
Renault
color: negro
color: plateado
modelo: 1998
modelo: 2006
marca: Mazda Alegro
marca: Renault Simbol
cilindrare: 1.4 c.c
frenar ()
cilindrare: 1.4 c.c
frenar ()
acelerar ()
acelerar ()
apagar ()
apagar ()
encender ()
encender ()
retroceder ()
retroceder ()
●
Herencia: Capacidad de poder heredar comportamientos y atributos entre clases. Se
puede crear una clase partiendo de otra que ya existe, de tal forma que la nueva
clase descendiente hereda todos los atributos y métodos de su clase antecesora o
padre. La clase antecesora será entonces la superclase de la clase descendiente.
●
Encapsulamiento: Capacidad que tienen los objetos para ocultar sus atributos y
métodos. Los objetos tienen control total de decidir quien puede acceder a sus
miembros (atributos o métodos). La forma natural de construir una clase es la de
definir una serie de atributos que, en general, no son accesibles fuera del mismo
objeto, sino que únicamente pueden modificarse a través de los métodos que son
definidos como accesibles desde el exterior de esa clase (métodos selectores y
modificadores declarados como públicos).
●
Mensajes: Para poder crear una aplicación se necesitan varios objetos, y estos
objetos no pueden estar aislados unos de otros, entonces para comunicarse esos
objetos se envían mensajes.
●
Polimorfismo: Esta característica permite que un método declarado con el mismo
nombre se implemente y actué de distintas formas.