News

Java 8 formalized this concept by requiring a functional interface to be annotated with the java.lang.FunctionalInterface annotation type, as in @FunctionalInterface.
This article explores Java 8's new CompletableFuture class, its value in programming systems that depend on asynchronous interactions, and how it complements fork/join-style parallelism.
The functional Predicate interface gets used extensively by the Java 8 Streams API. Any developer who wants to master functional programming in Java will need to be comfortable with the Predicate ...
A great deal of Java programming -- from conditional statements to iterative loops -- deals with the evaluation of true or false values. When you work with the JDK's Streams API and Lambda functions, ...
Abstract classes and interfaces in Java serve fundamentally different purposes. Learn the differences between these Java language elements and how to use them in your programs.