9.1a:

Erster Versuch, bricht mit Fehlermeldung ab:

java Main
Exception in thread "main" java.lang.OutOfMemoryError: Java heap space
        at Main.main(Main.java:8)
-> Java ist der Speicher ausgegangen.

Neuer Versuch:

time java  -Xmx1000m Main
Baum10000000 ist fertig.
Laufzeit des Programms war 38471ms
Eingabetaste zum Beenden.

real    0m39.234s
user    0m5.966s
sys     0m0.868s

$ ps auxw | egrep -e '(MEM|java)'
USER       PID %CPU %MEM    VSZ   RSS TTY      STAT START   TIME COMMAND
knopper  11311 12.0 41.3 1174584 213448 pts/5  Sl+  20:00   0:07 java -Xmx1000m Main

-> Das Programm läuft 38 Sekunden und benötigt über 1GB Hauptspeicher!

9.1b:

$ time java Main
Baum10000000 ist fertig.
Laufzeit des Programms war 3159ms
Eingabetaste zum Beenden.
Programmende.

real    0m4.462s
user    0m0.741s
sys     0m0.243s

$ ps auxw | egrep -e '(MEM|java)'
USER       PID %CPU %MEM    VSZ   RSS TTY      STAT START   TIME COMMAND
knopper  11574  6.4 10.6 212428 55028 pts/5    Sl+  20:10   0:00 java Main

-> Das Programm läuft 3 Sekunden und benötigt nur 200MB Hauptspeicher.

ERGEBNIS:

Die "Fliegengewicht"-Variante braucht bei 10 Millionen
Baum-Methodenaufrufen nur 1/10 der Rechenzeit, und nur
1/5 der Speicherresourcen im Vergleich
mit der "traditionellen" Version mit 10 Millionen tatsächlichen
Baum-Objekten.