Beruflich Dokumente
Kultur Dokumente
Se refiere a la capacidad para que varias clases derivadas de una antecesora utilicen un mismo mtodo de forma diferente
Los mtodos pueden ser identificados bajo el mismo nombre pero procesan informacin de manera diferente de acuerdo al objeto que lo contenga.
Sobrecarga
El trmino sobrecarga se refiere al uso del mismo identificador u operador en distintos contextos y con distintos significados. En el mbito de la POO, la sobrecarga de mtodos se refiere a la posibilidad de tener dos o ms mtodos con el mismo nombre pero funcionalidad diferente
Sobre-escritura
La sobre-escritura, se aplica a los mtodos y esta directamente relacionada a la herencia y se refiere a la re-definicin de los mtodos de la clase base en las clases derivadas.
public class Figura { protected double area; protected double perimetro; public Figura() { this.area=0; this.perimetro=0; } public double getArea() { return area; } public double getPerimetro() { return perimetro; } public void calcularArea() { } public void calcularPerimetro() { } } // termina class Figura
public class Circulo : Figura { private double radio; public Circulo() { super(); } public double getRadio() { return radio; } public void setRadio(double radio) { this.radio = radio; } public void calcularArea() { this.area = Math.PI*Math.pow(this.radio,2.0); } public void calcularPerimetro() { this.perimetro = 2*Math.PI*this.radio; } } // termina class Circulo
Ligadura dinmica
Permite invocar operaciones en objetos obviando el tipo actual de stos hasta el momento de la ejecucin del cdigo, es decir que me perite definir elementos como un tipo e instanciarlos como un tipo heredado
public class Empleado : Persona public class Persona { public string NombreComp; { private int NoEmp; public string NSS;
public class Profe:Persona { public string IdProfesor; public override string Algo() { return "Viene de Profe"; }
Son clases(clases base) de las cuales otras clases heredan(clases derivadas) *(HERENCIA) Representan el nivel ms alto en una jerarqua de clases No pueden ser instanciadas: No se pueden crear
abstracto tiene firma (definicin) pero no cuerpo (implementacin). Las clases derivadas deben sobre escribir este mtodo.
Public abstract class Figura { protected double area; protected double perimetro; public Figura() { this.area=0; this.perimetro=0; } public double getArea() { return area; } public double getPerimetro() { return perimetro; } public abstract void calcularArea() ; public abstract void calcularPerimetro(); } // termina class Figura
public class Circulo : Figura { private double radio; public Circulo() { super(); } public double getRadio() { return radio; } public void setRadio(double radio) { this.radio = radio; } public override void calcularArea() { this.area = Math.PI*Math.pow(this.radio,2.0); } public override void calcularPerimetro() { this.perimetro = 2*Math.PI*this.radio; } } // termina class Circulo
Es una clase especial en la que solamente se definen los mtodos y propiedades que una clase que la implemente debe codificar Es un contrato de forma que cualquier clase que la implemente debe utilizar los miembros de la interfaz usando la misma forma en que sta la ha descrito: mismo nmero de argumentos, mismo tipo de datos devuelto, etc.
Gracias a la implementacin de interfaces podemos crear relaciones entre clases que no estn derivadas de la misma clase base, pero que tengan mtodos comunes, al menos en la forma, aunque no necesariamente en el fondo. No se pueden crear instancias directamente de una interfaz Las interfaces no contienen implementaciones de mtodos
public interface ITest { string HolaMundo(); string DevolverCadena(string s); } public class Minusculas : ITest { public string HolaMundo() { return ("hola, mundo"); } public string DevolverCadena(string s) { return s.ToLower(); } }
public class Mayusculas : ITest { public string HolaMundo() { return ("HOLA, MUNDO"); } public string DevolverCadena(string s) { return s.ToUpper(); } }