String accessString() {
    StringBuilder result;

    result = new StringBuilder();
    if ((access_flags & 0x0001) != 0) {
      result.append("public ");
    }
    if ((access_flags & 0x0002) != 0) {
      result.append("(private?) ");
    }
    if ((access_flags & 0x0004) != 0) {
      result.append("(protected?) ");
    }
    if ((access_flags & 0x0008) != 0) {
      result.append("(static?) ");
    }
    if ((access_flags & 0x0010) != 0) {
      result.append("final ");
    }
    if ((access_flags & 0x0020) != 0) {
      result.append("(??0x20??) ");
    }
    if ((access_flags & 0x0040) != 0) {
      result.append("(volatile?) ");
    }
    if ((access_flags & 0x0080) != 0) {
      result.append("(transient?) ");
    }
    if ((access_flags & 0x0100) != 0) {
      result = result.append("(??0x100??) ");
    }
    if ((access_flags & 0x0200) != 0) {
      result = result.append("interface ");
    }
    if ((access_flags & 0x0400) != 0) {
      result = result.append("abstract ");
    }
    if ((access_flags & 0x0800) != 0) {
      result = result.append("(??0x800??) ");
    }

    return result.toString();
  }
Decoder represents a jdk ClassFile header. See "The Java Virtual Machine Specification"
for a detailed description of all of the fields in this and other classes in this
package and the "cp" (constant pool) package
<p>
Basically, all of the other classes hold indexes into one of the fields in this
class. Cp classes hold indexes into the constant_pool, which holds all of the Cp
instances associated with this CompiledClass. A CpMethodref, for instance, holds an
index into the constant_pool to locate the CpClass implementing the method as well
as an index into the constant_pool of the CpNameAndType of the method itself.
geode-junit/src/main/java/org/apache/geode/codeAnalysis/decode/CompiledClass.java