Generic é soda... Como faço isso?

1 resposta
saoj

Basicamente quero criar um método exec que executa qualquer tipo de ExecContext, ou seja, ExecContext<String>, ExecContext<Date>, ExecContext<Blah>, etc.

public static class ExecContext&lt;E&gt; {
		
		public void doSomething(E e) {
			
			System.out.println(e);
		}
	}
	
	public static void exec(ExecContext&lt;?&gt; ctx) {
		
		String s = new String("saoj");
			
		ctx.doSomething(s); // &lt;===================== ERROR: s is not ?
	}

1 Resposta

saoj

Ok, descobri. O famoso <T> antes do método.

public static class ExecContext&lt;E&gt; {
		
		public void doSomething(E e) {
			
			System.out.println(e);
		}
	}
	
	public static &lt;T&gt; void exec(ExecContext&lt;T&gt; ctx) {
		
		String s = new String("saoj");
			
		ctx.doSomething((T) s);
	}
Criado 1 de agosto de 2010
Ultima resposta 1 de ago. de 2010
Respostas 1
Participantes 1