Interface

Definição - o que significa interface?

Interface, em C #, é uma estrutura de código que define um contrato entre um objeto e seu usuário. Ele contém uma coleção de propriedades e métodos semanticamente semelhantes que podem ser implementados por uma classe ou uma estrutura que adere ao contrato.

Em geral, uma interface é usada para descrever um conjunto de funcionalidades relacionadas que podem ser implementadas em uma classe ou estrutura. Ele permite que uma classe herde vários comportamentos definidos em várias interfaces. Também ajuda a resolver a ambigüidade de nome que surge ao usar vários métodos com os mesmos nomes existentes em interfaces diferentes.

Projetar aplicativos usando interfaces ajuda a atender aos requisitos vitais de sistemas flexíveis, como acoplamento fraco, separação de interesses e adaptabilidade a mudanças futuras. Devido ao isolamento dos componentes que implementam as interfaces de um aplicativo, o teste desses componentes se torna mais fácil. A biblioteca .NET Framework usa muitas interfaces genéricas (cujos tipos são parametrizados) em classes de coleção para representar itens em uma coleção, de forma que as operações de boxing e unboxing em tipos de valor sejam evitadas.

Definirtec explica interface

Uma interface é uma construção que usa a palavra-chave "interface" e é semelhante a uma classe abstrata, mas sem nenhum código de implementação. Ele é implementado usando dois-pontos (:) em C #.

Por exemplo, IDisposabe é uma interface que pode ser implementada por uma classe C # para limpar os recursos usados ​​pelos objetos desse tipo de classe.

Os principais recursos de uma interface incluem:

  • Ele pode ser declarado em um espaço de nomes ou classe.
  • Seus membros podem ser um método, propriedade, evento ou indexador, mas não podem ser uma constante, campo, operador, construtor de instância, destruidor, tipo ou membro estático.
  • Ele não pode ser instanciado como um objeto e não pode ser definido com membros de dados.
  • Ao contrário de uma classe que pode herdar apenas uma classe base e várias interfaces, uma interface pode herdar apenas várias interfaces.
  • Um membro da interface tem acesso público por padrão, que não pode ser modificado usando nenhum modificador de acesso.
  • Modificadores, como virtual, override ou estático, não devem ser usados ​​com um membro de interface.
  • Uma interface pode ser acessada usando seu nome totalmente qualificado, que inclui o nome da interface seguido por um ponto e o nome do membro.
  • Um membro de interface com o "novo" modificador pode ser usado para ocultar um membro herdado com o mesmo nome.

Esta definição foi escrita no contexto de C #