private synchronized void saveClassFile() {
        /* getMembers() and releaseClassFile() are also synchronized.
         */
        if (classfile == null || hasMemberCache() != null)
            return;

        ByteArrayOutputStream barray = new ByteArrayOutputStream();
        DataOutputStream out = new DataOutputStream(barray);
        try {
            classfile.write(out);
            barray.close();
            rawClassfile = barray.toByteArray();
            classfile = null;
        }
        catch (IOException e) {}
    }