Supongamos que tengo esta interfaz R:"El tipo B no puede ser un superinterfaz de C, un superinterfaz debe ser una interfaz de" error
interface A
{
void doThis();
String doThat();
}
lo tanto, quiero algunas clases de resúmenes para implementar las doThis método () pero no el doThat() uno:
abstract class B implements A
{
public void doThis()
{
System.out.println("do this and then "+ doThat());
}
}
abstract class B2 implements A
{
public void doThis()
{
System.out.println(doThat() + "and then do this");
}
}
hay error viene cuando finalmente decide implementar el método de doThat en una clase regular:
public class C implements B
{
public String doThat()
{
return "do that";
}
}
Esta clase me lleva al error antes mencionado:
"El tipo B no puede ser un superinterfaz de C; un superinterfaz debe ser una interfaz"
Cualquiera podía ahora si esta jerarquía de clases es válida o debería hacer revés?
Para más detalles, recomiendo mirar las respuestas aquí: http://stackoverflow.com/questions/10839131/implement-vs-extends-when-to-use-whats-the-difference –