Так и не понял как обеспечить это условие:
В классе `ConflictImplementation` метод `Greet()` должен быть явно переопределен таким образом, чтобы обращаться к реализации метода по умолчанию каждого интерфейса.
А именно: Как обратиться к дефолтному методу интерфейса явно из класса который его реализует.
К сожалению, предложенное решение от платформы, просто копирует реализации дефолтных методов из интефейсов.
И такое решение валидатор не принимает)
Скажите это я дурак или задание очередное нерешаемое?
using System;
// Интерфейс IA с методом по умолчанию Greet
public interface IA
{
void Greet()
{
Console.WriteLine("Привет из IA");
}
}
// Интерфейс IB с методом по умолчанию Greet
public interface IB
{
void Greet()
{
Console.WriteLine("Привет из IB");
}
}
// Класс ConflictImplementation, реализующий оба интерфейса IA и IB
public class ConflictImplementation : IA, IB
{
}
class Program
{
static void Main()
{
// Создаем объект класса ConflictImplementation
var implementation = new ConflictImplementation();
// Приводим объект к типу интерфейса IA и вызываем Greet
IA ia = implementation;
ia.Greet();
// Приводим объект к типу интерфейса IB и вызываем Greet
IB ib = implementation;
ib.Greet();
}
}