Author: Newton Walter

Functions of Bytecode Verifier in Java

The popularity of the JVM and its extensive ecosystem of languages, IDEs, profilers, debuggers, APMs, and other valuable tools can be attributed to the JVM bytecode’s remarkable simplicity. Within just an hour, one can grasp the fundamentals of JVM bytecode, enabling them to swiftly delve into frameworks like ASM and start manipulating bytecode with ease.

Read More
Unlocking Harmony: Thread Synchronization in Java

Threads within the same process memory pose a challenge – potential collisions between operations. A bank application serves as an apt example, where uncoordinated threads accessing shared memory can lead to undesirable outcomes. Synchronization’s Necessity Imagine two BankTeller threads sharing a reference to the same BankAccount object. Without synchronization, a sleep() method causes a transaction

Read More
Mastering the module-info.java File in Java

Java packages serve a crucial role in organizing similar data types, including classes, interfaces, enums, and other packages. They’re also pivotal for grouping resources like property files and XML files. The organization of these packages is efficiently managed through a module descriptor. Utilizing Module Descriptor A module descriptor is essentially a Java file, named `module-info.java`.

Read More