JVM

Java JIT optimizations - Inline

Published on

Inlining is one of the most aggressive and rewarding optimizations performed by the HotSpot JIT compiler. It replaces a method call with the actual body of the method called, eliminating dispatch overhead and enabling further optimizations. But not all method calls are inlined, and understanding why requires diving deep into how the compiler makes these decisions.

The curious case of byte as int in Java InputStreams

Published on

The curious case of byte as int in Java InputStreams
Why does InputStream.read() returns an int instead of a byte in Java? It’s a small detail that sometimes puzzles developers, especially those new to Java’s I/O API. In this article, we break down the reasoning behind this design choice and explain why it actually makes the Java API more robust and developer friendly.