Herencia múltiple en interfaces Java

Pensé que la herencia múltiple siempre era ilegal en Java, pero este código compila:

public interface A {
  void a();
}

public interface B {
  void b();
}

public interface AB extends A, B {
}

Sería tener una interfaz vacía comoAB ser considerado una mala práctica? ¿Hay alguna manera de lograr algo similar al tiempo que se evita la interfaz vacía (usando genéricos o de otro tipo)?

Nota: No estoy preguntando cómo simular la herencia múltiple a través de interfaces. Me doy cuenta de que podría hacer lo siguiente:

public class AbImpl implements A, B {
  public void a() {}
  public void b() {}
}

Por varias razones necesito una interfaz que tenga ambos métodos.

Respuestas a la pregunta(5)

Su respuesta a la pregunta