La Funcionalidad De Una Clase Existente Se Puede Extender Al Crear Una Nueva Clase Que Se Deriva De Ella
En C#, el operador :, que equivale a extends e implements en Java, define la herencia e implementación de interfaces. La clase base siempre debe estar en elextremo izquierdo en la declaración de clase.
Como Java, C# no admite herencia múltiple, lo que significa que las clases no pueden heredar más de una clase. Sin embargo, se pueden utilizarinterfaces para ese propósito, de la misma manera que en Java.
El código siguiente define una clase denominada CoOrds con dos variables miembro privadas x e y que representan la posición del punto. Se tieneacceso a estas variables mediante propiedades denominadas X e Y, respectivamente:
public class CoOrds
{
private int x, y;
public CoOrds() // constructor
{
x = 0;
y = 0;}
public int X
{
get { return x; }
set { x = value; }
}
public int Y
{
get { return y; }
set { y = value; }
}
}
Una nueva clase,denominada ColorCoOrds, hereda todos los campos y métodos de la clase base, a la cual se pueden agregar nuevos campos y métodos para proporcionar características adicionales en la clase derivada, según seanecesario. En este ejemplo, se agrega un miembro privado y descriptores de acceso para agregar color a la clase:
public class ColorCoOrds : CoOrds
{
private System.Drawing.Color screenColor;public ColorCoOrds() // constructor
{
screenColor = System.Drawing.Color.Red;
}
public System.Drawing.Color ScreenColor
{
get { return screenColor; }
set {screenColor = value; }
}
}
El constructor de la clase derivada llama implícitamente al constructor de la clase base o la superclase, en terminología de Java. En caso de herencia, se llama a todos...
Regístrate para leer el documento completo.