When i need to implement the interface member explicitly ,it is private.
for example :
// when explicit implementation it is always private void I
Because 2 interfaces that implemented by that class explicitly can have method with the same name. That is why that method is private when accessing by class reference and public when interface.