Session

Understanding Java byte code

Java, Scala, Groovy: in the end, all JVM languages compile down to the class file format and Java byte code. It is thanks to the flexibility of this intermediate instruction set that the JVM became a platform so rich in languages. And the ability to generate byte code at run time is a prerequisite for many popular libraries such as Spring or Hibernate. This talk gives an introduction to compiled Java code and discusses different libraries for generating classes at run time. At a first glance, Java byte code can appear to be some low level magic that is both hard to understand and effectively irrelevant to application developers. However, neither is true. With only little practice, Java byte code becomes easy to read and can give true insights into the functioning of a Java program. In this talk, we will cast light on compiled Java code and its interplay with the Java virtual machine. In the process, we will look into the evolution of byte code over the recent major releases with features such as dynamic method invocation which is the basis to Java 8 lambda expressions. Finally, we will learn about tools for the run time generation of Java classes and byte code. Among those tools, I will present Byte Buddy, a novel open source code generator which is an attempt to considerably simplify run time code generation in Java.

Rafael Winterhalter

software consultant at Scienta in Oslo

Oslo, Norway

Actions

Please note that Sessionize is not responsible for the accuracy or validity of the data provided by speakers. If you suspect this profile to be fake or spam, please let us know.

Jump to top