ValueOf que usa generics

Tenho a seguinte classe abstrata com um método valueOf(String value) que deve instanciar e me devolver um objeto do tipo T (generico), que por sua vez é um subtipo (RG, CPF, etc) de T

[code]public abstract class DocumentoValidado implements Serializable {
//…

private String value;

protected DocumentoValidado(String value) throws DocumentoInvalidoException {		
    //...
    }

public <T extends DocumentoValidado> T valueOf(String value) {

}

//...	

}[/code]

como fazer esta instancia no método valueOf? Lembrando que o construtor da classe passada em T recebe um parametro String value.

Desde já, agradeço.

Bom pelo o seu codigo em nenhum momento vs informa a classe T

vs pode fazer da seguinte forma

public <T ex Document> T valueOf(Class<T> clazz, String value){
try{
clazz.getConstructor(String.class).newInstance(value);
}....
}

[quote=mauriciot.silva]Bom pelo o seu codigo em nenhum momento vs informa a classe T

vs pode fazer da seguinte forma

public <T ex Document> T valueOf(Class<T> clazz, String value){ try{ clazz.getConstructor(String.class).newInstance(value); }.... } [/quote]
O que vem a ser vs???

o q isso ira acrescentar no forum?

[quote=drsmachado][quote=mauriciot.silva]Bom pelo o seu codigo em nenhum momento vs informa a classe T

vs pode fazer da seguinte forma

public <T ex Document> T valueOf(Class<T> clazz, String value){ try{ clazz.getConstructor(String.class).newInstance(value); }.... } [/quote]
O que vem a ser vs???[/quote]

“vs” deve ser Vossa Senhoria, rsrs.

Brincadeiras a parte, a dica do mauriciot.silva foi boa.
Problema resolvido.

ou entao vs poder mudar a declaracao da classe

public abstract class DocumentoValidado<T ex DocumentoValidado> implements Serializable

public final T  valueOf(String value){
// logica para pegar tipo Generico....
try{ 
 // clazz seria o tipo generico...
 clazz.getConstructor(String.class).newInstance(value);  
}.... 
}

nao ha problema o method ser final, pois Documento eh Abstract… e jah terah uma logica implementada para as outras sub classes