Um array com métodos!

10 respostas
alexandref93

Um array só consegue guardar métodos de uma classe com retorno??? ou é possivel sem retorno??? eu tentei aqui, e o método sem retorno não funciona, pode ser que tem que fazer alguma coisa???

Obrigado pela atenção!!!

10 Respostas

davidbuzatto

O array não está armazenando o método, mas sim o retorno do método. Por isso que um se você tenta usar um método void o código não compila.

[]´s

Carlos_ds_jar

Se vc quer guardar funcionalidades dentro de um array tente guardar classes com métodos estáticos aí sim vc vai poder utilizar esses métodos de acordo com as posições do array :idea:

E

Infelizmente, no Java 7, ainda não vai ser possível ter “method references” (que é o nome provisório que o pessoal do Java 7 estava dando a um recurso muito semelhante a ponteiros de funções do C++). Portanto ainda não vai ser possível criar um array de métodos.

alexandref93

bem, fiz com método static mais não funcionou!!! =/

davidbuzatto

P/ que fazer isso se vc já tem os métodos estáticos nas classes?
Não faça isso.

Em Java você não consegue fazer isso. Você pode até usar a API de reflexão para chegar perto, mas você pode resolver seu problema de outra forma.
Quando as Closures forem suportadas no Java 7, ai você vai poder fazer algo do tipo.

[]´s

davidbuzatto

entanglement, mas colocar closures dentro de um array vai poder?
Fazer referência direta a métodos de classes não vai ser possível mesmo, mas closures eu acredito que sim.

[]´s

Carlos_ds_jar

Não sei se consegui me expressar bem, mas o que eu queria dizer era que isso é possível:

Object [] oa = new Object [10]; oa [0] = AdministradorInicializa.class; ((AdministradorInicializa) oa [0]).inicia();

Marky.Vasconcelos

O que voce quer fazer? Não entendi sua duvida.

alexandref93

só tava vendo as possibilidade de fazer com as coisas :roll:

E

entanglement, mas colocar closures dentro de um array vai poder?
Fazer referência direta a métodos de classes não vai ser possível mesmo, mas closures eu acredito que sim.

[]´s

  1. No Java 7 não vai haver exatamente “closures” tais como aquela proposta BGGA (veja http://www.javac.info )
    Vai haver “lambdas” que são na verdade aquelas “closures” só que em escopo bem mais restrito.

  2. Referências a métodos eram uma parte da proposta de “lambdas” que não vingou, provavelmente por problemas de tempo.

  3. Para saber em que pé está, vejam:

http://mail.openjdk.java.net/pipermail/lambda-dev/

Criado 25 de agosto de 2010
Ultima resposta 25 de ago. de 2010
Respostas 10
Participantes 5