Venkat Subramaniam: Java is changing in a responsible manner

When Java shows up at a party, it always brings a delicious dessert.

Quiz yourself: Define the structure of a Java class (intermediate)

Test your knowledge of Java classes, such as their valid names, the use of variables inside a method, and the number of import statements.

Quiz yourself: Declare and use List and ArrayList instances (intermediate)

Work with lists while avoiding unpleasant UnsupportedOperationException errors.

Reactive streams programming over WebSockets with Helidon SE

With Helidon SE, client applications can regulate asynchronous traffic by signaling remote publishers how much data to send at a time.

Four common pitfalls of the BigDecimal class and how to avoid them

When doing currency calculations in Java, you might use java.math.BigDecimal—but beware of some of that class’s unique challenges.

Quiz yourself: Search stream data using the findFirst, findAny, and anyMatch methods (advanced)

Streams are complicated. With the right approach, they can be very efficient too.

Inside Java 15: Fourteen JEPs in five buckets

Hidden classes, sealed classes, text blocks, records, and EdDSA: There’s lots of goodness in JDK 15.

Quiz yourself: Describe the modular SDK (intermediate)

Know which command-line utilities are mandatory for distributing applications with a custom JRE.

The joy of writing command-line utilities, Part 1: Finding duplicate files

Step-by-step creation of a small project that has practical utility

Quiz yourself: Use the Optional class (advanced)

Do you know how to use Optional? Find out in the latest by Simon and Mikalai.

Quiz yourself: Use PreparedStatement to perform database CRUD operations (intermediate)

PreparedStatement sends SQL to a database. Let’s see how it works.

How to write your own Maven plugins

Creating custom plugins for the Apache Maven build tool is easier than you might think.

The Java Optional class: 11 more recipes for preventing null pointer exceptions

How to avoid Optional class antipatterns and design smells—all while streamlining application development

Quiz yourself: Declaring and accessing modules (intermediate)

This intermediate-level Java SE 11 certification quiz tests your ability to declare modules and enable access between modules.

Quiz yourself: Applying access modifiers to Java classes (intermediate)

This Java certification quiz investigates the meaning of default accessibility and how it influences classes in different packages.

Java Cookbook, 4th Edition

Former Java Magazine editor Andrew Binstock reviews an updated classic work that’s great for all coders.

Quiz yourself: Methods that throw an exception (intermediate)

Understanding the checked exception mechanism requires that you understand how to declare a method that throws a checked exception, and how that differs from a method that either does not throw any exceptions or throws only unchecked ones.

Streaming analytics with Java and Apache Flink

How to use Flink’s built-in complex event processing engine for real-time streaming analytics

Get started with concurrency in Jakarta EE

One of the cornerstones of any well-written application is good performance, and that often means being able to run two or more tasks at the same time in parallel.

12 recipes for using the Optional class as it’s meant to be used

Follow these dozen best practices to protect your applications against ugly null pointer exceptions—and make your code more readable and concise.