Interfaz.

Definición: ¿Qué significa Interfaz?

La interfaz, en C #, es una estructura de código que define un contrato entre un objeto y su usuario. Contiene una colección de propiedades y métodos semánticamente similares que pueden ser implementados por una clase o estructura que se adhiera al contrato.

En general, una interfaz se utiliza para describir un conjunto de funcionalidades relacionadas que se pueden implementar en una clase o estructura. Permite que una clase herede múltiples comportamientos definidos en múltiples interfaces. También ayuda a resolver la ambigüedad de nombre que surge al usar varios métodos con los mismos nombres existentes en diferentes interfaces.

El diseño de aplicaciones que utilizan interfaces ayuda a abordar los requisitos vitales de los sistemas flexibles, como el acoplamiento flexible, la separación de preocupaciones y la adaptabilidad a cambios futuros. Debido al aislamiento de los componentes que implementan las interfaces de una aplicación, probar estos componentes se vuelve más fácil. La biblioteca de .NET Framework utiliza muchas interfaces genéricas (cuyos tipos están parametrizados) en clases de colección para representar elementos en una colección de modo que se eviten las operaciones de encajonar y desempacar en tipos de valor.

Techinfo explica la interfaz

Una interfaz es una construcción que utiliza la palabra clave "interfaz" y es similar a una clase abstracta pero sin ningún código de implementación. Se implementa usando dos puntos (:) en C #.

Por ejemplo, IDisposabe es una interfaz que puede ser implementada por una clase C # para limpiar los recursos utilizados por los objetos de ese tipo de clase.

Las características clave de una interfaz incluyen:

  • Puede declararse dentro de un espacio de nombres o una clase.
  • Sus miembros pueden ser un método, propiedad, evento o indexador, pero no pueden ser una constante, campo, operador, constructor de instancia, destructor, tipo o miembro estático.
  • No se puede instanciar como un objeto y no se puede definir con miembros de datos.
  • A diferencia de una clase que puede heredar solo una clase base y múltiples interfaces, una interfaz puede heredar solo múltiples interfaces.
  • Un miembro de la interfaz tiene acceso público de forma predeterminada, que no se puede modificar mediante modificadores de acceso.
  • Los modificadores, como virtual, override o estático, no deben usarse con un miembro de interfaz.
  • Se puede acceder a una interfaz utilizando su nombre completo, que incluye el nombre de la interfaz seguido de un punto y el nombre del miembro.
  • Un miembro de la interfaz con el modificador "nuevo" se puede utilizar para ocultar un miembro heredado con el mismo nombre.

Esta definición se escribió en el contexto de C #