Es el pilar más fuerte que asegura la reutilización de código, ya que a partir de esta característica
es posible reutilizar (heredar) las características y comportamientos de una clase superior
llamada clase padre, a sus clases hijas, denominadas clases derivadas. En el gráfico, Persona
es la clase Padre, que tiene como características: CI, nombre, dirección, fechaNac, genero, entre
otros; y Estudiante y Profesor son las clases "Hijas", que heredan las características de la clase
padre y a su vez establecen las propias de su clase. Esto implica que no se deberán volver a
definir, sino que por el simple hecho de heredarlas ya es posible utilizarlas y en el caso de los
comportamientos ejecutarlos o modificarlos si es necesario.
Polimorfismo
Objeto
El uso de objetos en la programación está relacionado con el hecho de que el mundo está
constituido de objetos que interactúan entre sí, todo aquello que está en la naturaleza es un
objeto y cada uno está formado de otros objetos más pequeños; pero ¿cómo definir un objeto?
Un objeto es un sustantivo en singular, si se recuerda que un sustantivo es aquello que existe:
una persona, animal, planta o cosa, entonces todo lo que se incluye en esta definición es un
objeto.
Ejemplo: un computador, un rectángulo, una persona, un libro, un carro, un perro, una factura,
una cuenta bancaria.
Métodos
Sobre los objetos es posible realizar acciones (operaciones, cálculos), para lo cual podría
utilizarse la pregunta, ¿Qué se puede hacer sobre el objeto X? Las respuestas a esta interrogante
facilitarán la identificación de las funcionalidades de los objetos. Si se recuerda que un verbo
es una palabra que denota acción, entonces las funcionalidades se especificarán con
verbos. Técnicamente se denominan MÉTODOS.
OBJETO FUNCIONALIDADES
CalcularArea
rectángulo CalcularPerimetro
CalcularIVA
detalleFactura CalcularDescuento
CalcularTotal
Depositar
transacción Retirar
CalcularIntereses
Clase
Dado que pueden existir varios objetos del mismo tipo, con las mismas características y
funcionalidades, se crean las clases, que representan los modelos ideales de un objeto, una
plantilla a partir de la cual se pueden crear objetos que compartan esas características y
funcionalidades; así, tomando en cuenta algunos de los ejemplos de objetos mencionados
anteriormente, algunas clases serían: Clase Transacción, Clase Rectángulo, Clase Persona,
Clase Factura; esto significa que cada vez que se requiera una transacción se creará un objeto
basado en la plantilla Transacción; cuando se requiera un objeto rectángulo se creará a partir
de la plantilla Rectángulo; y así con cada uno de los objetos, siempre que se requiera un objeto
de un tipo específico con unas características y funcionalidades se deberá crear una plantilla
(clase) que será el modelo para todos los objetos de ese tipo.
A la acción de crear objetos, se denomina instanciar una clase; relacionando con los
conocimientos adquiridos hasta ahora, una Clase se puede considerar como un nuevo tipo de
datos, personalizado, creado por el programador, y la variable de ese nuevo tipo de dato, es el
objeto.
Factura fact;
Factura es la clase y fact es el objeto de la clase Factura. Cuando se le asigne valores a ese
objeto fact, en ese momento se realiza la instanciación.
Las clases tienen una parte privada y una parte pública.
REFORZANDO CONCEPTOS DE POO
La POO es un nuevo paradigma de programación, es una forma diferente de programar,
un modelo a seguir para solucionar problemas a través de la informática.
La POO tiene como su más importante característica la reutilización del código que significa
que se escribe una vez y se reutiliza varias veces en los casos en que sea requerido.
Las acciones (operaciones, cálculos) que se realizan sobre un objeto se denominan métodos y
para identificarlos se debe preguntar: ¿Qué se puede hacer sobre el objeto X? y su respuesta
debe ser un verbo en infinitivo. Las clases representan los modelos ideales de un objeto, una
clase es una plantilla a partir de la cual se pueden crear objetos que compartan esas
características (atributos) y funcionalidades (métodos). lase = plantilla
Objeto = sustantivo
Método = verbo
Atributo = característica
GUÍA DE POO
La presente guía docente corresponde a la asignatura Programación Orientada a Objetos
(POO), aprobada para el curso lectivo 2013-2014 en Junta de Centro y publicada en su versión
definitiva en la página web de la Escuela Politécnica Superior. El presente documento es una
guía, y por tanto es posible que su desarrollo durante el curso sufra alguna variación.