Foros aprenderaprogramar.com

Aprender a programar => Aprender a programar desde cero => Mensaje iniciado por: @mayakoski en 23 de Septiembre 2019, 03:37

Título: non static variable this cannot be referenced from a static context CU00683B
Publicado por: @mayakoski en 23 de Septiembre 2019, 03:37
Mi propuesta de solución para el ejercicio CU00683B del tutorial de programación Java desde cero de aprenderaprogramar.

¿Por qué se produce el error non static variable this cannot be referenced from a static context en el código propuesto?

El error se da porque this actua sobre la instancia de un objeto, en este caso no tenemos instanciado y ademas se esta ejecutando dentro del main que es static, planteo los cambios que hice, espero me corrijan si estoy equivocado

Código: [Seleccionar]
public class Test {
static int atributo1;
Test(int atrib) {
atributo1 = 0;
}

public static void main(String[] Args) {
System.out.println("Mensaje 1");
System.out.println("Atributo 1 vale " + Test.getAtrib1());
} // Cierre del main

static int getAtrib1() {
return atributo1;
}

} // Cierre de la clase
Título: Re:non static variable this cannot be referenced from a static context CU00683B
Publicado por: Alex Rodríguez en 21 de Octubre 2020, 14:33
Hola, el ejercicio está bien resuelto. En el hilo https://aprenderaprogramar.com/foros/index.php?topic=2354.0 puede verse otra solución y algunos comentarios interesantes. Saludos.