Dúvida com métodos "static" [RESOLVIDO]

3 respostas
Tuanny_Ramos

Olá galerinha do Fórum.

o que seria mais rápido:
usar a palavra "static" e chamar o método como NomeDaClasse.metodoStatic()
ou
ter um método "public" e instanciar a classe para usar o método?

outra questão:
dentro de um método "static" do tipo boolean, por exemplo, não posso retornar um outro método que não seja "static" ?
Por exemplo:

public boolean outroTeste() {
   if (1+1 == 2) {
      return true;
   }
   return false;
}

public static boolean teste() {
   boolean ret = false;
   ret = outroTeste(); // <<- Aqui o ambiente de programação começa a reclamar.
   return ret;
}

3 Respostas

jyoshiriro

o que seria mais rápido:
usar a palavra “static” e chamar o método como NomeDaClasse.metodoStatic()
ou
ter um método “public” e instanciar a classe para usar o método?

“O mais rádipo”, tanto para implementar como na execução é a primeira opção. Só tome cuidado e verifique se é a opção certa para a solução que você busca!

É isso mesmo. não pode fazer isso, afinal o outro método não é estático, ou seja, só pode ser chamado de um objeto e não da classe.
Faça a seguinte analogia…
Métodos estáticos voam.
Métodos não estáticos não voam.
Um método estático, ao ser invocado, começa a voar.
Dai, ele pode chamar outros métodos para voarem com ele, logo, só métodos estáticos podem ir com ele, pois os outros não voam.

Entendido?

G

hehe…boa explicação!!

Tuanny_Ramos

Legal, boa explicação!!!
Obrigada.

Criado 10 de fevereiro de 2010
Ultima resposta 11 de fev. de 2010
Respostas 3
Participantes 3