When using classes one can use obfuscation/optimisation
tools on class-files (e.g. progaurd) in order to reduce
footprint,
Well, what do you want to achieve? All that "obfuscation" would
do in the gcj context is break debugging.
Well, it would make all classes significant smaller - at least it
does in the class-file situation. All the
niceAndDescriptiveMethodName() methods and fields will have their
names decimated into something that does not take up so much space.
Hence, the final program will have a smaller footprint when
fitting it into an embedded device with not that much flash.
Ah, now I understand. Embedded devices, presumably not using virtual
memory. On a machine that does use virtual memory using such a
system would make no sense at all, but if you want to squeeze such
stuff into flash it might.