@bigredeyes:
Nein, newInstance() liefert ein Object.
@mamamia
Was willst Du genau machen? Eine Klasse dynamisch laden und davon eine bekannte Methode aufrufen?
Wenn ja, hier ein Beispiel:
import java.lang.reflect.*;
[...]
public Object callMethod (URLClassLoader urlClassLoader,
String className,
String methodenName,
Object[] parameter) throws Throwable
{
Class RunMe = urlClassLoader.loadClass(className);
// Create a new instance
Object o = RunMe.newInstance();
Class[] parameterTypen = new Class[parameter.length];
// Parametertypen werden zum Auffinden der Methode benötigt:
for (int i = 0; i < parameterTypen.length; i++)
{
parameterTypen[i] = parameter[i].getClass();
}
Method methode = null;
try
{
methode = RunMe.getDeclaredMethod(methodenName, parameterTypen);
}
catch (Exception ex)
{
Logger.add(this.getClass(), ex);
return null;
}
try
{
return methode.invoke(o, parameter);
}
catch (Exception ex)
{
Logger.add(this.getClass(), ex);
}
return null;
}