/ / Posso referenciar dinamicamente um objeto em java? - java, objeto, dinâmico, referência, tempo de execução

Posso referenciar dinamicamente um objeto em java? - java, objeto, dinâmico, referência, tempo de execução

Estou trabalhando em um ambiente de simulação chamado AnyLogic e ele usa Java como código subjacente.

No meu exemplo, o usuário desenha um fluxograma e, em tempo de execução, cada elemento do fluxograma é instanciado. Eu posso determinar o que o usuário desenhou pelo código:

           LinkedList eo = (LinkedList) this.getEmbeddedObjects();
  • que retorna uma lista de Strings representando os nomes de todos os objetos no fluxograma.

Eu gostaria de acessar dinamicamente esses objetos "métodos, mas eu sou novo em Java e não tenho certeza de como fazer isso. Pelo que entendi da reflexão, posso instanciar um classForName, mas nesse caso eu já instanciei objetos e quero usar as Strings para acessá-los.

Não sei como proceder e agradeço sugestões.

Obrigado :-)

Respostas:

1 para resposta № 1

Você pode usar API de reflexão Java para a tarefa.

Essa API é um pouco detalhada, no entanto. Se isso é um problema, você deve procurar um dos disponíveis fluente reflexão APIs.


2 para resposta № 2

http://java.sun.com/developer/technicalArticles/ALT/Reflection/

Você pode obter uma lista de nomes de métodos, encontrar o que deseja e invocá-lo.


0 para resposta № 3

o que é "nomes de todos os objetos nofluxograma "? Você tem algum HashMap que armazena objetos por seus nomes? Nesse caso, basta obter um objeto pelo nome e chamar seus métodos diretamente, sem qualquer reflexão.