Java 6 stores all the constant pool and Class information in the Perm Gen
Java 7 only stores the class information in the Perm Gen. The String literal pool is on the heap.
Java 8 has no Perm Gen. The literal pools and class information are on the heap.