He estado experimentando y descubrí que cuando ejecuto el código continuo, no se compila y no puedo entender por qué.Java: hacer una referencia estática a la lista de campos no estáticos
Mi IDE dice 'No puedo hacer una referencia estática a la lista de campos no estáticos', pero realmente no entiendo qué ni por qué es esto. También lo demás se aplica a, es decir: se trata sólo de las variables y métodos privados o demasiado y por qué ?:
public class MyList {
private List list;
public static void main (String[] args) {
list = new LinkedList();
list.add("One");
list.add("Two");
System.out.println(list);
}
}
Sin embargo, cuando lo cambio a la siguiente, que hace el trabajo:
public class MyList {
private List list;
public static void main (String[] args) {
new MyList().exct();
}
public void exct() {
list = new LinkedList();
list.add("One");
list.add("Two");
System.out.println(list);
}
}
El método principal es estático. Solo tiene acceso a las variables miembro estáticas y funciones de la clase adjunta. El error es bastante autoexplicativo. – Perception
Desde su código, parece que está intentando crear una fábrica de singleton. Si ese es su objetivo, debe cambiar 'lista de lista privada; 'a' lista de lista estática privada; ' –
@Perception: Entonces, si cambia la' lista de lista privada; 'a' lista de lista privada estática; 'en el primer código, debería funcionar ??? – noMAD