It sounds pretty technical word. How can you observe the perforamnce or the behavior of your class files (byte code)? Are there any hooks that JVM gives us to do this? The answer is ‘Bytecode instrmentation’ (BCI). Using BCI you can examine and modify the bytecode objects before they are executed. This is a very usefull facility used in profiling Java applications.
Java Virtual Machine Tool Interface (JVMTI) is native programming interface that can be used to inspect and control the JVM. Generally profiling, debugging and analysis tools use BCI.