Al fin luego de mucho luchar hemos dado con la respuesta de esta interrogante que tantos lectores de nuestro espacio han tenido. Si quieres compartir alguna información puedes aportar tu información.
Solución:
Nunca puede crear una instancia de una interfaz en Java. Sin embargo, puede hacer referencia a un objeto que implementa una interfaz por el tipo de interfaz. Por ejemplo,
public interface A
public class B implements A
public static void main(String[] args)
A test = new B();
//A test = new A(); // wont compile
Lo que hiciste anteriormente fue crear una clase anónima que implementa la interfaz. Está creando un objeto anónimo, no un objeto de tipo interface Test
.
Sí, tu ejemplo es correcto. Las clases anónimas pueden implementar interfaces, y esa es la única vez que se me ocurre que verá una clase implementando una interfaz sin la palabra clave “implementa”. Echa un vistazo a otro ejemplo de código aquí:
interface ProgrammerInterview
public void read();
class Website
ProgrammerInterview p = new ProgrammerInterview()
public void read()
System.out.println("interface ProgrammerInterview class implementer");
;
Esto funciona bien. Fue tomado de esta página:
Normalmente, puede crear una referencia para una interfaz. Pero no puede crear una instancia para la interfaz.
Valoraciones y reseñas
Acuérdate de que tienes la capacidad de comentar si te fue de ayuda.