Folgender Code compiliert nicht
Kann man das irgendwie hinkriegen: ein Objekt von einem generisch übergebenen Typen instanziieren?
PS: T.class.getInstance() liefert auch einen Fehler: illegal type literal
Code:
private static <T> T createNewIfNull( T obj) throws Exception
{
if( obj != null)
{
return obj;
}
else
{
return obj.getClass().newInstance(); //<-- Fehler: Type mismatch:
//cannot convert from capture-of ? extends Object to T
}
}
Kann man das irgendwie hinkriegen: ein Objekt von einem generisch übergebenen Typen instanziieren?
PS: T.class.getInstance() liefert auch einen Fehler: illegal type literal