Java 8
What are the new features introduced in JAVA 8?
There are dozens of features added to Java 8, the most significant ones are mentioned below −
- Lambda expression − Adds functional processing capability to Java.
- Method references − Referencing functions by their names instead of invoking them directly. Using functions as parameter.
- Default method − Interface to have default method implementation.
- New tools − New compiler tools and utilities are added like 'jdeps' to figure out dependencies.
- Stream API − New stream API to facilitate pipeline processing.
- Date Time API − Improved date time API.
- Optional − Emphasis on best practices to handle null values properly.
- Nashorn, JavaScript Engine − A Java-based engine to execute JavaScript code.
Along with these new featuers, lots of feature enhancements are done under-the-hood, at both compiler and JVM level.
What are default methods?
With java 8, an interface can have default implementation of a function in interfaces.
What are static default methods?
An interface can also have static helper methods from Java 8 onwards.
public interface vehicle {
default void print() {
System.out.println("I am a vehicle!");
}
static void blowHorn() {
System.out.println("Blowing horn!!!");
}
}