Dúvida sobre métodos

Porque alguns métodos não precisam de referência para chama-los ?

Todos os métodos precisam se uma referencia onde ser invocados.
Mas algumas vezes, para facilitar, essa referencia é implícita.Por exemplo, quando chamamos um método da mesma classe ou da hierarquia da classe.

objeto.algumMetodo();
outroMetodo(); //método sem referência

Está falando de algo do tipo? Se sim, é porque o tal método sem referência foi declarado como static e na mesma classe onde roda este código.

Não sei se esta e sua duvida, mas se vc se refere a coisas como:


Classe.metodo();

e


Classe umaInstancia = new Classe();
umaInstancia.metodo();

vale a pena a pena dar uma olhada aqui:
http://www.guj.com.br/java.tutorial.artigo.121.1.guj

sem entrar em detalhes, no primeiro caso trata-se de um metodo de classe(modificador static) e no segundo um metodo de instancia.

[quote=ziegfried] objeto.algumMetodo(); outroMetodo(); //método sem referência
Está falando de algo do tipo? Se sim, é porque o tal método sem referência foi declarado como static e na mesma classe onde roda este código.[/quote]

É isso mesmo, só que não tem essa parte de static. A segunda chamada é sempre que o outro método está na mesma classe onde roda o código.

Ou seja,

outroMetodo() //equivale a fazer this.outroMetodo() //e, no caso de um método static: SuaClasse.outroMetodo()

[quote=ziegfried] objeto.algumMetodo(); outroMetodo(); //método sem referência
Está falando de algo do tipo? Se sim, é porque o tal método sem referência foi declarado como static e na mesma classe onde roda este código.[/quote]

É isso mesmo meu amigo, agora entendi, é pq o método é da mesma classe mesmo, valeu cara. :smiley: