Comment by lxgr
> meaning to squeeze every byte (and this was real) you had to reduce the number of classes in the jar
I suppose Google did something right with Dalvik (other than improving their "It's not Java!" stance for copyright reasons), i.e. introduce a bytecode file format that can share constants across Java classes :)
That was a path already trailed by JVM implementations for embedded systems, which already translated JVM bytecodes to their internal formats.
An example was IBM's Websphere Real Time JVM.