InterviewVault
Welcome back, Sujit Kumar Mishra
Admin
SK Mishra
Revision Mode
Document technical questions and best-practice answers.
Can you explain about Java-8 features?
Java 8 Key Features (Easy to Remember):
1: Lambda Expressions
Lets you write code in a cleaner and shorter way, especially for passing behavior as a method argument.
Runnable r = () -> System.out.println("Hello from Lambda!");
2: Functional Interfaces
Interfaces with only one abstract method. Used mainly with lambda expressions.
@FunctionalInterface interface MyFunc { void doSomething(); }
3: Stream API
Helps process collections of objects easily (like filtering, sorting, and mapping data).
List<String> names = list.stream().filter(s -> s.startsWith("A"))
.collect(Collectors.toList());
4: Default & Static Methods in Interfaces
You can now add methods with a body inside interfaces.
default void print() { System.out.println("Default method"); }
5: Date and Time API
Improved classes to handle date and time (like LocalDate, LocalTime, LocalDateTime).
LocalDate today = LocalDate.now();
6: Optional Class
Helps avoid NullPointerException by representing optional values.
Optional<String> name = Optional.ofNullable(getName());
7: Nashorn JavaScript Engine
Allows you to run JavaScript code on the Java platform.
ScriptEngine engine = new ScriptEngineManager()
.getEngineByName("nashorn");
In short:
Java 8 made Java more powerful and easier to use with features like lambdas, streams, better date/time handling, and more!