Q1. Explain the new features added in Java 8
- Lambda
Expressions - Used to define a
function that can be referenced as an object.
- Functional
Interface - Interfaces with just
one abstract method.
- Method References - Allow us to use functions as parameters for
invoking a method.
- Optional class - A wrapper class used to check Null values.
- Default Methods - Allows us to add implementation for methods
inside an interface.
- Stream API - Special iterator class that allows pipeline
processing of data.
- Date API - An improved API inspired by JodaTime.
- ForEach ()
method- to iterate the elements.
- Parallel Array
Sorting- Array class which is used to sort array elements
parallel.
- JDBC
Enhancements- The JDBC-ODBC Bridge
has been removed
- Base64 Encode
Decode- class Base64 to deal with encryption.
Q2. What are the advantages of Java 8?
- Improved code readability and reusability.
- Small boilerplate code.
- Better stability
- Parallel execution of operations.
- compact code
Q3. What is a Lambda Expression?
Lambda
expressions are a new and important feature of Java that was included in Java
SE 8. It provides a clear and concise way to use expressions to represent
method interfaces. Very useful in collection libraries. This is useful for
iterating, filtering, and extracting data from the collection.
Q4. What is the use of Lambda Expression?
·
Provides
an implementation of the functional interface.
·
Less
coding.
Q5. What are Functional Interfaces?
An
interface that has only one abstract method is called a functional interface.
Java provides the @FunctionalInterface annotation used to declare an interface
as a functional interface.
Q6. What does Method Reference mean in Java
8?
A method reference is a way to reference a
method without calling it. The colon (: :) is used as the method reference.
Method references are used to treat methods as lambda expressions.
Q7. What is Java 8 Streams?
A stream is like a set of objects retrieved from a source
such as a collection. These are used to perform aggregated operations on data
in a pipeline fashion. These are used to make the processing of data easier and
easier. You can use Stream to filter, collect, print, convert one data
structure to another, and more.
Q8. What do you mean by Default Methods?
Java provides the ability to create standard
methods within an interface. Methods that are defined in the interface and
marked as default are called default methods. These methods are non-abstract methods.
Default keyword is used to create default methods.
Q9. Explain the forEach () method with the
help of an example.
The forEach
() method is part of the Stream API. It is used to iterate
over each
element of the stream to perform an action.
Collection classes that extend the Iterable interface can iterate
over elements using forEach loops.
import
java.util.ArrayList;
public
class ForEachExample {
public
static void main (String [] args) {
List
gamesList = new ArrayList ();
gamesList.add
("Soccer");
gamesList.add
("Cricket");
gamesList.add
("ches");
gamesList.add
("Hockey");
System.out.println
("------------ Iteration by passing a lambda expression --------------");
gamesList.forEach
(games-> System.out.println (games));
}
}
Q10. What is Optional, and why is it used?
You can
optionally have a container or wrapper class that can contain 0 or 1 values.
This class contains methods to check if a value exists. This class is used as
the return type for methods that may return null. This method should return an
object, not a value. This helps avoid NullPointerException.Optional class
provides methods which are used to check the presence of value for particular
variable.
Q11. What is Java Base64 Encode and Decode, and why is it used?
Java
provides Base64 classes for encryption. You can use the methods provided to
encrypt and decrypt your data. To use the method, you need to import
java.util.Base64 into your source file.
Q12. What is Stream Filter, and why is it used?
Java
Stream provides a filter () method for filtering stream elements based on the
specified predicate. If you want to get only the elements of the list, you can
easily get them using the filter method.
Q13. What is String Joiner class used for?
Java has added a new final class, StringJoiner,
to the java.util package. Used to create a sequence of characters separated by a
delimiter. You can now create a string by passing a delimiter
such as a comma (,) or dash (-). You can also pass a prefix and suffix to the string.
Q14. What is Java Nashron?
Nashron is a JavaScript engine. It is used to dynamically execute JavaScript code in the JVM (Java Virtual Machine). Java provides jjs, a command line tool used to execute JavaScript code.
You can use the jjs command line tool
to execute JavaScript code and embed
it in your Java source code.
Q15. What is Java Parallel Array Sorting?
Java
provides a new additional function of the Array class used to sort array
elements in parallel. The method is called parallelSort () and is overloaded
for objects that are equivalent to all primitive data types.
0 Comments