Неявная и явная реализация интерфейса

Работая над обновлением, я случайно наткнулся на такой код.

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: Я понимаю, что явная реализация интерфейса очень важна, и ее можно использовать, когда нам нужно предоставить доступ к методу только на уровне интерфейса и использовать два интерфейса с одинаковой сигнатурой метода.

Ответы на вопрос(2)

Ваш ответ на вопрос