Java-Objekte

Mit JayMo kann auf die meisten Java-Klassen sehr einfach zugegriffen werden.

Das Java-Prefix

Für den Zugriff auf Java-Klassen wird das Prefix "Java_" vor den Klassennamen gesetzt.

Neue Instanz einer ArrayList:

a = Java_ArrayList
a.add( 3 )
a.toString.print

Da das Paket "java.util" generell importiert ist, kann mit "Java_ArrayList" eine ArrayList-Instanz erzeugt werden. Andere Pakete müssen erst eingebunden werden:

>class "java.net.URI"

Java_URI( "file:///tmp/foo.tmp" ).print

Weitere Informationen bzgl. Einbinden von Paketen und Klassen: "Java-Pakete importieren"

Auch ist es möglich, direkt über den vollen Klassenpfad eine Instanz zu erzeugen. Hierzu wird der Klassenpfad mit geschweiften Klammern nach dem Java-Prefix angehängt:

Java_{java.util.ArrayList}

Der Java-Wrapper

Alternativ kann ein Java-Objekt direkt über den Java-Wrapper erzeugt werden:

al = Java( "ArrayList" )

Hier kann auch der gesamte Paket-Pfad übergeben werden:

al = Java( "java.util.ArrayList" )

Anschließend lässt sich mit dieser ArrayList wie gewohnt interagieren. Die Objekt-Funktionen stehen dabei zur Verfügung, somit also auch ".print" und ".echo".

al.print
al.add( "foo" )
al.get( 0 ).print
al.toString.print

Der Vorteil hier ist, dass der Klassenpfad flexibel erzeugt und übergeben werden kann.

pack = "java.util."
class = "ArrayList"
al = Java( pack+class )

Beispiele

sys = Java( "java.lang.System" )
sys.currentTimeMillis.checksum.type.print
sys.getProperty( "os.arch" ).print
Java_{java.lang.System}.err.println( "foo" )
obj = Java( "java.lang.Object" )
obj.getClass.getSimpleName.print
- Powered by OghsWiki -

 

 

Unterstützen

Die Entwicklung von "JayMo" wird derzeit nur durch Eigeninitiative ermöglicht.

Erhalten:  0 €