Como fazer para uma String virar um Metodo

6 respostas
Romildo_Paiter

Ola pessoal tudo bem.

To precisando de um help!!!, como eu faço para uma String virar um Metodo.

Eu só quero fazer a instância passando uma String, e dentro do construtor, ele vai saber qual mensagem chamar. vou postar logo abaixo o código.
Sei que é provavelmente uma reflexão, mas não consegui fazer.

Desde já agradeço a todos.

package Telas;

import java.lang.reflect.Method;

public class Mensagens {
	
	public Mensagens(){
		
	}
	
	public Mensagens(String msg){
		String teste = "Mensagens." + msg;
		
	}

	public void atencao(){
		System.out.println("!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!");
		System.out.println("|      '/!\'    ATENCAO O DADO INFORMADO É INVALIDO            |");
		System.out.println("!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!");				
	}

}

Esse é um trabalho da faculdade que estou fazendo, Como eu conseguirei chamar o metodo atenção por meio da String que estou passando no construtor.

Desde já agradeço a todos.

att

Romildo Jozue Paiter

6 Respostas

luistiagos

Tire isto de seu construtor…
coloque em um metodo e chame-o…

private void chamaMetodo(String metodo) {
Mensagens menssagens = new Mensagens();
Mensagens.class.getDeclaredMethod(metodo, null).invoke(menssagens, null);
}

creio q isto deve funcionar… não testei… mas creio que é isto ai…

Mikhas

Sei não, mas acho que existem maneiras melhores de fazer o que você quer.

Por que você não explica melhor.

Romildo_Paiter

Ola Luiz, muito obrigado, funcionou do jeito que eu queria… Ficou perfeito.

Mikhas, obrigado a vc também

Muito Obrigado.

galileu.gt

luistiagos:
Tire isto de seu construtor…
coloque em um metodo e chame-o…

private void chamaMetodo(String metodo) {
Mensagens menssagens = new Mensagens();
Mensagens.class.getDeclaredMethod(metodo, null).invoke(menssagens, null);
}

creio q isto deve funcionar… não testei… mas creio que é isto ai…

Caramba! nunca imaginei que isso pudesse ser feito!
Como é o desempenho desse tipo de código? voce saberia dizer se é bom ou ruim?

Valeu!
Obrigado

Romildo_Paiter

Galileu. isso é Reflexão um conceito muito importante do JAVA.

Aqui tem um Link dentro do próprio GUJ, que pode te ajudar a entende.

http://www.guj.com.br/article.show.logic?id=10

Com a ajuda do Luiz, ele usou um modo diferente, que achei muito mais rápido.

Do que se eu estivesse fazendo, pois estava seguindo um meio mais dificil.

att

Romildo Paiter

galileu.gt

Pois é! Eu já tinha ouvido falar do reflection mas nunca tinha visto um exemplo na pratica. Tinha usado algo parecido em Python!

Muito obrigado pelo tutorial! vou dar uma olhada

Criado 2 de junho de 2010
Ultima resposta 2 de jun. de 2010
Respostas 6
Participantes 4