> Pessoal,
>
> O que significa o static em cada uma das declarações abaixo:
>
> public static int getNumber() { return valor; }
> public static void main (String args[]) {...}

Simplificadamente:
Em métodos significa que você não precisará criar instâncias das classes
para usar os métodos. Se o método getNumber estiver em uma classe Numero,
você não precisará fazer
      Numero x = new Numero();
      ...
      int y = x.getNumber();
podendo fazer diretamente
      int y = Numero.getNumber();

No caso do main, que é o ponto de entrada de uma classe executável, vale a
mesma regra: não é necessário criar uma instância da classe que o contém.

> public static int valor = 0;

Isso quer dizer que o campo valor será um único, compartilhado por todas
as instâncias da classe que o contém *e* pela própria classe. Se a classe
que o contém for, por exemplo, MinhaClasse, o trecho de código
      MinhaClasse a = new MinhaClasse();
      MinhaClasse b = new MinhaClasse();
      MinhaClasse c = new MinhaClasse();
      a.valor = 1;
      b.valor++;
      System.out.println(c.valor);
      MinhaClasse.valor++;
      System.out.println(a.valor);
imprimirá 2 e 3.

espero ter ajudado
Rafael



------------------------------ LISTA SOUJAVA ---------------------------- 
http://www.soujava.org.br  -  Sociedade de Usuários Java da Sucesu-SP 
dúvidas mais comuns: http://www.soujava.org.br/faq.htm
regras da lista: http://www.soujava.org.br/regras.htm
historico: http://www.mail-archive.com/java-list%40soujava.org.br
para sair da lista: envie email para [EMAIL PROTECTED] 
-------------------------------------------------------------------------

Reply via email to