Во время обновления я столкнулся с таким кодом.
interface ICustomization
{
IMMColumnsDefinition GetColumnsDefinition();
}
class Customization : ICustomization
{
private readonly ColumnDefinition _columnDefinition;
//More code here.
public ColumnsDefinition GetColumnsDefinition()
{
return _columnDefinition;
}
ColumnsDefinition ICustomization.GetColumnsDefinition() //redundant
{
return GetColumnsDefinition();
}
}
Мой вопрос: Есть ли необходимость/использование "явной" реализации интерфейса в этом фрагменте кода? Будет ли она создавать какие-либо проблемы, если я удалю метод (явная реализация интерфейса), который я обозначил "избыточным" выше?
PS: Я понимаю, что явная реализация интерфейса очень важна, и его можно использовать, когда нам нужно предоставить доступ к методу только на уровне интерфейса и использовать два интерфейса с одной и той же сигнатурой метода.