Generics Java

3 respostas
mauriciot.silva

Alguem sabe como eu posso passar um Object de parametro para um metodo e retornar o tipo?

Exemplo:…

Object x = new Long(“1”);

MinhaClasse.get(x);

onde o metodo get(Object obj), recebe um objecto qualquer e retorne
um tipo especifico(no exemplo acima o metodo retornaria um Long)??

3 Respostas

davidbuzatto

O método getClass() vai retornar um objeto do tipo Class que representa a classe do objeto e não o tipo da referência.

[]'s

mauriciot.silva

sim o metodo getClass ira me retorna a classe.
so que precisso fazer a tipagem de acordo com essa classe
Exemplo:

public class Execute {

public static <T> T get(Object obj) {
	T t = (T) obj;
	return t;
}

public static void main(String[] args){
	Object obj = new Double("0.0");
	
	System.out.println(Execute.get(obj).doubleValue());

}

}

o metodo get(Object obj), seria generico e o tipo de retorno seria java.lang.Double (exemplo acima),
e nao o java.lang.Object

Sesshoumaru
kara o codigo abaixo nao faz o q vc precisa nao?
public static void main(String[] args) {
		Object obj = new Double("0.0"); 

		System.out.println(obj.getClass());
}
Criado 25 de novembro de 2011
Ultima resposta 1 de dez. de 2011
Respostas 3
Participantes 3