Junior — Middle
Peut-on déclarer l'implémentation d'une méthode directement dans la définition d'une interface?
sobes.tech IA
Réponse de l'IA
À partir de C# 8.0, il est possible de déclarer des implémentations de méthodes directement dans leur définition dans les interfaces — cela s’appelle les "méthodes avec implémentation par défaut" (default interface methods). Cela permet d’ajouter de nouvelles méthodes aux interfaces sans perturber les implémentations existantes.
Exemple :
public interface ILogger
{
void Log(string message); // méthode normale d’interface
void LogWarning(string message) // méthode avec implémentation par défaut
{
Log("Warning: " + message);
}
}
Auparavant, dans les interfaces, on ne pouvait déclarer que des signatures de méthodes sans corps. Désormais, il est possible d’écrire le corps de la méthode, ce qui étend les capacités des interfaces.