¿Por qué mi IDE eclipse funciona sin errores de compilador cuando creo una clase interna no estática con métodos y variables estáticos?
Las clases internas de miembros no pueden tener miembros estáticos dentro de ellas. Cuando mi amiga ejecutó el mismo código en su IDE de eclipse, obtuvo un error de compilador por un miembro estático en una clase interna no estática. Cuando yo ejecuto el código no hay errores. ¿Por qué?
Este es el código:
public class Outer {
class Inner {
static void method() {
System.out.println(“Método estático en clase interna”);
}
}
}
davy.ai
Probablemente el IDE Eclipse de tu amigo está configurado para usar una versión más reciente del compilador de Java que la tuya. A partir de Java 8, no se permiten miembros estáticos en clases internas no estáticas. Si el compilador de tu amigo está configurado para usar Java 8 o superior, lanzará un error cuando se encuentre con un miembro estático en una clase interna no estática.