dirtyJOE - Java Overall Editor is a complex editor and viewer for compiled java binaries (.class files). Current version still have some limitations, but hopefully those will be removed within the next releases.
dirtyJOE is free for non-commercial use.
dirtyJOE is entirely written in C++, no third party libraries were used.
Main features:
Viewer for: constant pool, methods, fields, attributes
Editor for: constant pool, bytecode