title: JAVA, cannot bypass the more specific direct super type
body: <p>I'm learning about interfaces. What happens here? and why I get a message:</p>
  
  <blockquote>
    <p>"Illegal reference to super type SomeInterface2, cannot bypass the
    more specific direct super type interfejsy.SomeInterface3"</p>
  </blockquote>
  
  <pre><code>public interface SomeInterface1 {       
      public default void action(){
          System.out.println("default interface1 method");
      };
  
  }
  
  public interface SomeInterface2 {
      public default void action(){
          System.out.println("default interface2 method");
      };
  }
  
  public interface SomeInterface3 extends SomeInterface2{
  
      public default void action(){
          System.out.println("default interface3 method");
      }
  }
  </code></pre>
  
  <p>...</p>
  
  <pre><code>public class ClassImplementingInterface implements SomeInterface1, SomeInterface2, SomeInterface3{
  
      //Every interface has action() method so we have to override it
      @Override
      public void action() {
          SomeInterface1.super.action();
          SomeInterface2.super.action(); //---- compiler error
          SomeInterface3.super.action();
      }
  }
  </code></pre>