/** Print a description of the class (not members). */ public void printclassHeader() { String srcName = ""; if ((srcName = cls.getSourceName()) != "null") // requires debug info out.println("Compiled from " + javaclassname(srcName)); if (cls.isInterface()) { // The only useful access modifier of an interface is // public; interfaces are always marked as abstract and // cannot be final. out.print( (cls.isPublic() ? "public " : "") + "interface " + javaclassname(cls.getClassName())); } else if (cls.isClass()) { String[] accflags = cls.getAccess(); printAccess(accflags); out.print("class " + javaclassname(cls.getClassName())); if (cls.getSuperClassName() != null) { out.print(" extends " + javaclassname(cls.getSuperClassName())); } } String[] interfacelist = cls.getSuperInterfaces(); if (interfacelist.length > 0) { if (cls.isClass()) { out.print(" implements "); } else if (cls.isInterface()) { out.print(" extends "); } for (int j = 0; j < interfacelist.length; j++) { out.print(javaclassname(interfacelist[j])); if ((j + 1) < interfacelist.length) { out.print(","); } } } // Print class attribute information. if ((env.showallAttr) || (env.showVerbose)) { printClassAttributes(); } // Print verbose output. if (env.showVerbose) { printverbosecls(); } out.println("{"); }