абстрактные, виртуальные и запечатанные методы в интерфейсах C# -8 - PullRequest
4 голосов
/ 11 марта 2020

Следующий интерфейс не содержит ошибок в. Net приложении Core Console с C# -8.0

interface I
{
    public abstract void f();
    public virtual void g() => Console.WriteLine("g");
    public sealed void h() => Console.WriteLine("h");
}

abstract, препятствующим добавлению определения в интерфейс. virtual и sealed требуют определения в интерфейсе. sealed предотвращает реализацию h в производных классах.

Do abstract, virtual и sealed, при использовании в интерфейсах, имеют любое другое значение или приложения в текущей реализованной версии C# - 8? Как и когда они должны использоваться в интерфейсах?

...