variável estática

3 respostas
D

Não entedi essa questão a resposta dela :???:

Qual é o resultado depois que compilar e rodar o seguinte código?
public class Test {
  static int total = 10;

  public static void main(String[] args) {
    new Test();
  }

  public Test() {
    System.out.println("In test");
    System.out.println(this);
    int temp = this.total;
    if (temp > 5) {
      System.out.println(temp);
    }
  }

}
The class not compile The value 10 is one of the elements printed to the standard output X The class compiles but generates a runtiem error

Pra mim teria que dar erro porque uma variável estática estaria sendo acessada por this...

donatinho
[size="11"][color="red"]* Editado: Lembre-se de utilizar BBCode em seus códigos - Ratinho[/color][/size] :joia:

3 Respostas

S

Variavel static não tem problema nenhum ser acessada via this… dentro de um metodo não estatico.

this é uma referencia a sua classe … e vc quer pegar uma variavel estatica dessa classe.

static vc tem que lembrar que é unica para todas as instancias desta classe.

O que vc não pode fazer é chamar um metodo não estatico de um metodo ou bloco estatico.

D

“donatinho”:
Valeu cara!!!

Obrigado pela dica :slight_smile:

:cool:

J

Lembrando que apesar de isso ser possivel não é recomendavel usar, por questões de clareza…

obs.: Isso está escrito no manual de convenções da Sun

Criado 30 de agosto de 2006
Ultima resposta 30 de ago. de 2006
Respostas 3
Participantes 3