For the Jvm field descriptors, as this link says: https://docs.oracle.com/javase/specs/jvms/se7/html/jvms-4.html#jvms-4.3.2
It uses Z to describe boolean type, J for long and L for class instance.
Anyone knows why?
I mean I noticed that B has already used by byte, but why use Z for boolean? why not use L for long and R for reference?