Listando variáveis de uma Classe

1 resposta
L

Opa, ai povo tudo certinho?

Seguinte, to com o seguinte BEAN:

package bean;

public class Categoria {
	
	public int id;
	public String categoria;
	public int subcategoria;
	public int ativo;
	
}

Como que eu faço, tipo um for each em todas as variaiveis da classe, e pego os tipos dela para fazer o devido tratamento?

Tipo criar um método toString(), meio que universal, que me emita os valores da classe separados por virgula, no estilo, id : "1", categoria: "1" e etc...

Em php é piladinho, só dar um foreach no this, agora já em java :P

Podem me ajudar?

Abracetas!

1 Resposta

L
import java.lang.reflect.Field;

public class T {

	public int id;
	public String categoria;
	public int subcategoria;
	private int ativo;

	public T() {
		this.id = 1;
		this.categoria = "eeee";
		this.subcategoria = 2;
		this.ativo = 3;
	}

	public static void main(String[] args) {
		T ex = new T();
		for (Field f : T.class.getDeclaredFields()) {
			try {
				System.out.println(f.getType() + " - " + f.getName() + ":"
						+ f.get(ex));
			} catch (IllegalArgumentException e) {
				// TODO Auto-generated catch block
				e.printStackTrace();
			} catch (IllegalAccessException e) {
				// TODO Auto-generated catch block
				e.printStackTrace();
			}
		}

	}
}

Blz?! da uma estudada no pacote reflect do java.... :wink:

valeu!

Criado 13 de outubro de 2006
Ultima resposta 13 de out. de 2006
Respostas 1
Participantes 2