Documente Academic
Documente Profesional
Documente Cultură
MORFISMO: Formas
Distintas instancias del mismo tipo interpretan el mismo mensaje en diferentes formas
Mtodo abstracto:
Figura
Circulo
Triangulo
Mtodo concreto:
Figura a = new Crculo (); Figura b = new Tringulo (); *Este fragmento de cdigo muestra el concepto de polimorfismo
HERENCIA
POLIMORFISMO
CLASES
JERARQUA
MTODOS
As como la herencia est relacionada con las clases y la jerarqua, el polimorfismo est relacionado con los mtodos
Es el mecanismo que permite convertir objetos de una sper clase a una subclase la sintaxis es : Variable Subclase=(sub clase) variable superclase; Este no se puede efectuar indiscriminadamente , si no sobre objetos de la misma rama de herencia.
SOBRECARGA
Es la posibilidad de tener dos o ms funciones con el mismo nombre pero funcionalidad diferente. Es decir, dos o ms funciones con el mismo nombre realizan acciones diferentes.
class Calculadora { int suma(int x, int y) { return (x + y); } float suma(float x, float y) { return (x + y); } }
SOBREESCRITURA
ENLACE DINAMICO
Desde un objeto de la clase derivada, siempre se accede al mtodo sobrescrito. El mtodo original queda oculto. La decisin de a quien llamar se resuelve basndose en el tipo de la variable del objeto
Desde cualquier mtodo de la clase base o derivada o desde fuera de ellas, una llamada a un mtodo se resuelve en base al tipo del objeto, no el de la variable.
public class Empleado { String nombre; int salario; public String getDetails () { return "Nombre: " + nombre + "\n" + "Salario: " + salario; } } public class Jefe extends Empleado{ String departamento; public String getDetails() { return "Nombre: " + nombre + "\n" + "Departamento: " + departamento;
class Base { public: void Metodo( ) {cout << "Base::Metodo\n"; }}; class Derivada : public Base { public: void Metodo( ) {cout << "Deri::Metodo\n"; }}; void main() { Base ObjBase; Derivada ObjDerivada; Base* pBase; pBase = &ObjBase; pBase->Metodo( ); pBase = &ObjDerivada; pBase->Metodo( ); }
Polimorfismo es la posibilidad de que un mtodo tenga el mismo nombre y produzca el mismo efecto bsico pero est implementado de forma distinta en las subclases.