Ir ao conteúdo

Posts recomendados

Postado
public class Bar {
    public final long agora = System.currentTimeMillis();
    public static void main(String[] args) {
    	
    	System.out.println(agora);
    	System.out.println(agora);
	}

}

Eu fiz esse programa para printar o valor de agora, mas nas duas linhas de print ta dando erro "cannot make a static reference to the non-static field agora"

Mas eu estou fazendo referencia estatica onde? como corrigir?

Postado

cannot make a static reference to the non-static field agora

não pode realizar uma referência static ao campo não static agora

 

O método main é static e a variável agora não é, isto é uma quebra de escopo, são duas soluções possíveis que dependem do conceito do programa:

 

1. Mudar a variável agora para static

Esta solução é mais direta, mas dificilmente será a mais correta, muito cuidado ao utilizar variáveis static pois você poderá enfrentar erros inesperados.

 

2. Criar uma instância da classe Bar

public class Bar {
    public final long agora = System.currentTimeMillis();
    public static void main(String[] args) {
    	Bar bar = new Bar()
    	System.out.println(bar.agora);
    	System.out.println(bar.agora);
	}

}

 

Visitante
Este tópico está impedido de receber novas respostas.

Sobre o Clube do Hardware

No ar desde 1996, o Clube do Hardware é uma das maiores, mais antigas e mais respeitadas comunidades sobre tecnologia do Brasil. Leia mais

Direitos autorais

Não permitimos a cópia ou reprodução do conteúdo do nosso site, fórum, newsletters e redes sociais, mesmo citando-se a fonte. Leia mais

×
×
  • Criar novo...

LANÇAMENTO!

eletronica2025-popup.jpg


CLIQUE AQUI E BAIXE AGORA MESMO!