Sobes.tech
Junior

Come viene effettuata la richiesta all'interfaccia?

sobes.tech AI

Risposta dell'AI

L'accesso all'interfaccia avviene chiamando i metodi o accedendo alle proprietà di un'istanza della classe che implementa tale interfaccia. Non è possibile creare un'istanza dell'interfaccia stessa.

Esempio:

// Dichiarazione dell'interfaccia
public interface ILogger
{
    void LogMessage(string message);
}

// Classe che implementa l'interfaccia
public class ConsoleLogger : ILogger
{
    public void LogMessage(string message)
    {
        Console.WriteLine(message);
    }
}

// Utilizzo dell'interfaccia
public class Application
{
    private readonly ILogger _logger;

    public Application(ILogger logger) // Dipendenza dall'interfaccia
    {
        _logger = logger;
    }

    public void Run()
    {
        _logger.LogMessage("Applicazione avviata."); // Chiamata metodo tramite interfaccia
    }
}

// Nel punto di ingresso
public class Program
{
    public static void Main(string[] args)
    {
        ILogger logger = new ConsoleLogger(); // Creazione di un'istanza della classe che implementa l'interfaccia
        Application app = new Application(logger);
        app.Run();
    }
}

Principi fondamentali:

  • Polimorfismo: Permette di accedere a diverse implementazioni di un'interfaccia tramite un tipo di dato unico (interfaccia).
  • Astrazione: Permette di nascondere i dettagli di implementazione e lavorare solo con il contratto definito dall'interfaccia.
  • Utilizzo dell'istanza: La richiesta all'interfaccia avviene sempre tramite un'istanza della classe che implementa i metodi e le proprietà dichiarate nell'interfaccia.