contabilidad

Páginas: 8 (1807 palabras) Publicado: 6 de abril de 2014
4.3 Interfaces definición, implementación de interfaces, herencia de interfaces.
Una interfaz contiene sólo las firmas de métodos, delegados o eventos. La implementación de los métodos se hace en la clase que implementa la interfaz, como se muestra en el ejemplo siguiente:
      interface ISampleInterface
{
    void SampleMethod();
}
 
class ImplementationClass : ISampleInterface
{
   // Explicit interface member implementation:
    void ISampleInterface.SampleMethod()
    {
        // Method implementation.
    }
 
    static void Main()
    {
        // Declare an interface instance.
        ISampleInterface obj = new ImplementationClass();
 
        // Call the member.
        obj.SampleMethod();
    }
}
 
Una interfaz puede ser miembro de un espacio denombres o de una clase, y puede contener firmas de los siguientes miembros:
•Métodos
•Propiedades
•Indizadores
•Eventos
Una interfaz puede heredar de una o varias interfaces base.
Cuando una lista de tipos base contiene una clase base e interfaces, la clase base debe aparecer primero en la lista.
Una clase que implementa una interfaz puede implementar explícitamente miembros de esa interfaz.Sólo se puede tener acceso a un miembro explícitamente implementado mediante una instancia de la interfaz, y no mediante una instancia de clase.
 
En el siguiente ejemplo, se muestra la implementación de una interfaz. En este ejemplo, la interfaz IPoint contiene la declaración de propiedades, la cual es responsable de establecer y obtener los valores de los campos. La clase Point contiene laimplementación de las propiedades.
 
// Interface implementation
using System;
interface IPoint
{
   // Property signatures:
   int x
   {
      get;
      set;
   }
 
   int y
   {
      get;
      set;
   }
}
 
class Point : IPoint
{
   // Fields:
   private int _x;
   private int _y;
 
   // Constructor:
   public Point(int x, int y)
   {
      _x = x;
      _y = y;
   } 
   // Property implementation:
   public int x
   {
      get
      {
         return _x;
      }
 
      set
      {
         _x = value;
      }
   }
 
   public int y
   {
      get
      {
         return _y;
      }
      set
      {
         _y = value;
      }
   }
}
 
class MainClass
{
   static void PrintPoint(IPoint p)
   {
     Console.WriteLine("x={0}, y={1}", p.x, p.y);
   }
 
   static void Main()
   {
      Point p = new Point(2, 3);
      Console.Write("My Point: ");
      PrintPoint(p);
   }
}
 
Resultado:
 
My Point: x=2, y=3
 
Las interfaces se definen utilizando la palabra clave interface. Por ejemplo:
interface IComparable
{
    int CompareTo(object obj);
}
 
Las interfaces describen un grupo de comportamientosrelacionados que pueden pertenecer a cualquier clase o estructura. Las interfaces pueden estar compuestas de métodos, propiedades, eventos, indizadores o cualquier combinación de estos cuatro tipos de miembros. Una interfaz no puede contener campos. Los miembros de interfaz son automáticamente públicos.
 
Al igual que las clases se pueden heredar de una clase base o estructura, las clases yestructuras se pueden heredar de interfaces, con dos excepciones:
 •Una clase o estructura puede heredar más de una interfaz.
 •Cuando una clase o la estructura hereda una interfaz, hereda sólo los nombres de método y las firmas, ya que la propia interfaz no contiene ninguna implementación. Por ejemplo:
 
public class Minivan : Car, IComparable
{
    public int CompareTo(object obj)
    {        //implementation of CompareTo
        return 0;  //if the Minivans are equal
    }
}
 
Para implementar un miembro de interfaz, el miembro correspondiente de la clase debe ser público, no estático y tener el mismo nombre y la misma firma que el miembro de interfaz. Las propiedades e indizadores de una clase pueden definir descriptores de acceso adicionales para una propiedad o...
Leer documento completo

Regístrate para leer el documento completo.

Estos documentos también te pueden resultar útiles

  • Contabilidad
  • Contabilidad
  • Contabilidad
  • Contabilidad
  • Contabilidad
  • Contabilidad
  • Contabilidad
  • Contabilidad

Conviértase en miembro formal de Buenas Tareas

INSCRÍBETE - ES GRATIS