Our previous article introduced bytecode and discussed what it includes. This article will delve a bit deeper into ConstantPool.
Highlights
- Bytecode is a representation that is abstract in nature. They are fictitious codes for a fictitious machine known as the Java virtual machine. The Java virtual machine is a piece of software that interprets bytecode.
- The JVM is a stack-based computer. Real CPUs are register-based systems and execute machine code. Java is compiled into bytecode, an intermediate form, which is then executed by the just-in-time (JIT) compiler, which generates machine code.
Before going any further, let's explore javap
, which is a very handy tool for deconstructing byte code.