Junior
O que é uma interface em C#?
sobes.tech IA
Resposta da IA
A interface em C# é um contrato que define um conjunto de membros (métodos, propriedades, eventos, indexadores), mas não contém sua implementação. Classes e estruturas podem implementar uma ou várias interfaces, comprometendo-se a fornecer a implementação de todos os membros da interface.
Características principais:
- Permite alcançar polimorfismo.
- Define comportamento, não estado.
- Pode conter apenas declarações de membros sem modificadores de acesso (implicitamente
public). - Não pode ser criada diretamente (instanciada).
- Suporta herança múltipla (uma classe pode implementar várias interfaces).
- Interfaces padrão foram introduzidas com .NET Core 3.0+, permitindo fornecer implementações de membros.
Exemplo:
// Definição da interface
public interface ICustomer
{
string GetFullName(); // Declaração de método
int CustomerId { get; } // Declaração de propriedade
}
// Classe que implementa a interface
public class CompanyCustomer : ICustomer
{
public int CustomerId { get; set; }
public string CompanyName { get; set; }
public string ContactPerson { get; set; }
public string GetFullName()
{
return $"{CompanyName} ({ContactPerson})";
}
}