Java Reference
In-Depth Information
private static void handleMethods(Method[] methods)
{
for(Method method: methods)
{
System.out.println(" " + method.getName() + ":");
int mod = method.getModifiers();
System.out.println(" modifiers: " +
Modifier.toString(mod));
System.out.print(" parameters:");
Class<?>[] params = method.getParameterTypes();
for(Class<?> param : params)
{
System.out.print(" " + param.getName());
}
System.out.println();
System.out.println(" return type: " +
method.getReturnType().getName());
System.out.print(" exceptions:");
Class<?>[] exceptions = method.getExceptionTypes();
for(Class<?> exception : exceptions)
{
System.out.print(" " + exception.getName());
}
System.out.println();
}
}
}
In Listing 2.1 werden beispielha die Teile des Programmcodes gezeigt, die Informationen
über die Methoden einer Klasse ausgeben. Die Methode handleMethods wird pro Klasse
zwei Mal aufgerufen, einmal für das von getDeclaredMethods und einmal für das von get-
Methods zurückgelieferte Method-Feld. Die Methode handleMethods gibt für jedes Element
eines als Argument übergebenen Method-Felds den Namen der Methode, ihre Modifi ers, die
Typen ihrer Parameter, den Rückgabetyp und die Typen der möglicherweise der von ihr
geworfenen Ausnahmen aus. Zu den sogenannten Modifi ers gehören u. a. public, private,
abstract, fi nal usw. Die Modifi ers sind durch eine ganze Zahl des Typs int codiert, wobei
unterschiedliche Bits für unterschiedliche Eigenscha en stehen. Ist das betreff ende Bit
gesetzt, so ist die Eigenscha vorhanden. Die statische Methode toString der Klasse Modi-
fi er liefert alle vorhandenen Eigenscha en als String zurück, wobei die einzelnen Eigen-
scha en durch ein Leerzeichen voneinander getrennt sind. Es ist wesentlich bequemer,
diese Methode zu benutzen als für jedes einzelne Bit abzuprüfen, ob es gesetzt ist oder
nicht, um dann im positiven Fall einen entsprechenden String auszugeben.
2.1.6 Anwendungen
Auch wenn es den Leserinnen und Lesern dieses Buches nicht immer bewusst ist, so haben
sie vermutlich schon So ware verwendet, in der Refl ection eingesetzt wird. Wenn Sie näm-
lich eine Entwicklungsumgebung (IDE: Integrated Development Environment) wie Eclipse
verwenden, dann werden Sie wissen, dass die Entwicklungsumgebung beim Tippen Vor-
schläge macht, auf welche Methoden oder Attribute über eine bestimmte Variable zugegrif-
 
Search WWH ::




Custom Search