Junior
Qu'est-ce qu'une interface en C#?
sobes.tech IA
Réponse de l'IA
L'interface en C# est un contrat qui définit un ensemble de membres (méthodes, propriétés, événements, indexeurs), mais ne contient pas leur implémentation. Les classes et structures peuvent implémenter une ou plusieurs interfaces, en s'engageant à fournir l'implémentation de tous les membres de l'interface.
Caractéristiques clés :
- Permet d'atteindre le polymorphisme.
- Définit le comportement, pas l'état.
- Peut contenir uniquement des déclarations de membres sans modificateurs d'accès (implicite
public). - Ne peut pas être créé directement (instancié).
- Supporte l'héritage multiple (une classe peut implémenter plusieurs interfaces).
- Des interfaces par défaut ont été introduites avec .NET Core 3.0+, permettant de fournir des implémentations de membres.
Exemple :
// Définition de l'interface
public interface ICustomer
{
string GetFullName(); // Déclaration de méthode
int CustomerId { get; } // Déclaration de propriété
}
// Classe implémentant l'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})";
}
}