ExpertiDict

C# · Avançado · Inglês · Técnico

default interface method

/dɪˈfɔlt ˈɪntɚfeɪs ˈmɛθəd/substantivo

Método de interface com corpo padrão (C# 8), usado quando os implementadores não o definem; permite evoluir uma interface publicada sem quebrar as classes existentes.

Onde usar

Aparece quando uma biblioteca precisa adicionar um membro a uma interface já distribuída. O método só é visível pela interface, e não pela classe que a implementa.

Em código

ILog l = new Simples();
l.Info("oi");           // usa o padrão
interface ILog {
  void Info(string m) => Console.WriteLine(m);
}
class Simples : ILog { }

Exemplos

We added a default interface method to avoid a breaking change.

Adicionamos um default interface method para evitar uma breaking change.

You have to cast to the interface to call the default method.

Você precisa converter para a interface para chamar o método padrão.

Cuidado

Não substitui classe abstrata: não há estado de instância nem construtores, e chamar o método exige tratar o objeto como a interface.

Sinônimos

método de interface padrão

Veja também

Todos os termos de C#