Convenience-Methoden
BeanShell bietet eine überschaubare Anzahl von Convenience-Methoden (zu deutsch: nützliche Hilfs-Funktionen), die beim Skripting und Debugging unterstützen können.
print()
Die Methode print(Object) erzeugt eine String-Ausgabe eines beliebigen Objekts. Beispielhafter Aufruf aus der BeanShell-Konsole:
bsh % e = context.getStoreElement();
bsh % print(e);
<SECTION editor="833847" id="835469" lastchange="1168967507480" name="Text/Bild" notdisplayed="" position="2" revision="1739" sectiontemplate="10">
<LANG language="DE"/>
</SECTION>
show()
Der Aufruf der Methode show() bewirkt, dass alle Rückgabe-Werte der darauf folgenden Methoden automatisch in der Konsole ausgegeben werden. Ein erneuter Aufruf von show() beendet die automatische Ausgabe. Beispiel:
bsh % show();
bsh % e = context.getStoreElement();
<<SECTION editor="833847" id="835469" lastchange="1168967507480" name="Text/Bild" notdisplayed="" position="2" revision="1739" sectiontemplate="10">
<LANG language="DE"/>
</SECTION>
>
getMethods()
Manchmal ist es hilfreich einen Überblick über die für ein Objekt verfügbaren Methoden zu bekommen. Über den Klassennamen eines Objekts lässt sich mit getMethods() eine Liste der Methoden anzeigen. Beispiel:
bsh % print(e.getClass().getMethods());
java.lang.reflect.Method []: {
public void de.espirit.firstspirit.store.access.pagestore.SectionImpl.appendChildBefore(de.espirit.firstspirit.access.store.StoreElement,de.espirit.firstspirit.access.store.StoreElement),
public java.util.Set de.espirit.firstspirit.store.access.pagestore.SectionImpl.getReferences() throws java.io.IOException,
public final de.espirit.firstspirit.access.store.templatestore.Template de.espirit.firstspirit.store.access.pagestore.SectionImpl.getTemplate(),
public void de.espirit.firstspirit.store.access.pagestore.SectionImpl.clearCachedData(),
...
public final void java.lang.Object.wait() java.lang.InterruptedException,
public final native void java.lang.Object.wait(long) throws java.lang.InterruptedException,
public final native void java.lang.Object.notify(),
public final native void java.lang.Object.notifyAll(),
}
javap()
Die Methode javap(Object) zeigt eine Übersicht über alle Methoden und Felder eines Objekts.