Foros aprenderaprogramar.com

Aprender a programar => Aprender a programar desde cero => Mensaje iniciado por: umadara en 13 de Julio 2016, 12:05

Título: variable no estática, no se puede hacer referencia a partir de contexto CU00683B
Publicado por: umadara en 13 de Julio 2016, 12:05
Buenas, aquí adjunto otro ejercicio, el CU00683B del taller práctico de programación en Java desde cero.

¿Qué mensaje de error se obtiene?

non- static variable this cannot be referenced from a static context

variable no estática, no se puede hacer referencia a partir de un contexto estático

¿Por qué se obtiene este mensaje de error?

1) La utilización de this no es correcta en un método main.

2) Para la utilización de métodos y atributos dentro de un main, estos deben de estar declarados como static.

¿Cómo podemos solucionarlo para que se ejecute lo que pretendemos?

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" + getAtrib1());
    } //Cierre del main
    public static int getAtrib1() {return atributo1;}
} //Cierre de la clase

Gracias por vuestros comentarios

Un saludo
Título: Re:variable no estática, no se puede hacer referencia a partir de contexto CU00683B
Publicado por: Mario R. Rancel en 18 de Julio 2016, 14:38
Buenas tardes Umadara la respuesta y solución propuesta son correctas. En el hilo https://www.aprenderaprogramar.com/foros/index.php?topic=2354.0 puedes ver algunos comentarios interesantes. Saludos.