ClubEnsayos.com - Ensayos de Calidad, Tareas y Monografias
Buscar

Polimorfismo


Enviado por   •  22 de Abril de 2014  •  603 Palabras (3 Páginas)  •  243 Visitas

Página 1 de 3

El Polimorfismo (implementado en C++ con funciones virtuales) es la tercera característica esencial de un lenguaje orientado a objetos, después de la abstracción de datos y la herencia.

De hecho, nos provee de otra dimensión para la separación entre interfaz y la implementación, desacoplando el qué del cómo. El Polimorfismo permite mejorar la organización del código y su legibilidad así como la creación de programas extensibles que pueden "crecer" no sólo durante el desarrollo del proyecto, si no también cuando se deseen nuevas características.

La encapsulación crea nuevos tipos de datos combinando características y comportamientos. El control de acceso separa la interfaz de la implementación haciendo privados (private) los detalles. Estos tipos de organización son fácilmente entendibles por cualquiera que venga de la programación procedimental. Pero las funciones virtuales tratan de desunir en términos de tipos.

Llegamos ahora a los conceptos más sutiles de la programación orientada a objetos.

La virtualización de funciones y clases nos permite implementar una de las propiedades más potentes de POO: el polimorfismo.

#include <iostream>

using namespace std;

class ClaseA {

public:

ClaseA() : datoA(10) {}

int LeerA() const { return datoA; }

void Mostrar() {

cout << "a = " << datoA << endl; // (1)

}

protected:

int datoA;

};

class ClaseB : public ClaseA {

public:

ClaseB() : datoB(20) {}

int LeerB() const { return datoB; }

void Mostrar() {

cout << "a = " << datoA << ", b = "

<< datoB << endl; // (2)

}

protected:

int datoB;

};

int main() {

ClaseB objeto;

objeto.Mostrar();

objeto.ClaseA::Mostrar();

...

Descargar como (para miembros actualizados)  txt (3.5 Kb)  
Leer 2 páginas más »
Disponible sólo en Clubensayos.com