title: Two interface with same method name
body: <p>Is it ok to have one implementation for a method with the same name from two interfaces?</p>
  
  <p>I was convinced that we need always do explicity implement <code>IFoo1.Bar()</code>, but the code below is compiling and running. Any thoughts?</p>
  
  <pre><code>using System;
  namespace ConsoleApp1
  {
      interface IFoo1
      {
          void Bar();
      }
      interface IFoo2
      {
          void Bar();
      }
      class Foo : IFoo1, IFoo2
      {
          public void Bar()
          {
              Console.WriteLine("Test");
          }
      }
      public class Program
      {
          public static void Main(string[] args)
          {
              Foo foo = new Foo();
              foo.Bar();
  
              IFoo1 iFoo1 = new Foo();
              iFoo1.Bar();
  
              IFoo2 iFoo2 = new Foo();
              iFoo2.Bar();
          }
      }
  }
  </code></pre>