Java 8: Release and Features

Mar 20th, 2014

Java 8: Release and Features

Finally, Java 8 arrives on March 18, 2014. This release has been announced at EclipseCon 2014. It is the first major release in Java after two years of time. Java 8 comes with lot of new features which are new to the Java programming itself.

From today you can download Java 8 and use it in your project. We already predicted the Java 8 release in our previous blog: JAVA: STORIES 2013

Some of the notable improvements and features in Java 8 are listed below:

Lambdas Expressions

Provide a means to pass functions as data. With implicit casting to Single Abstract Method types (such as Runnable) it will dramatically simplify code that needs to pass filters and other predicates as data. (Note that the reason they are called lambdas is that Java has had closures in the form of inner classes since Java 1.1; what some incorrectly refer to as closures are really talking lambdas.) An example of a lambda is x -> x +1.

Stream API

Classes in the new java.util.stream package provide a Stream API to support functional-style operations on streams of elements. The Stream API is integrated into the Collections API, which enables bulk operations on collections, such as sequential or parallel map-reduce transformations.

Extension Methods or Defender Methods

We all are aware of the fact that the interfaces don’t contain any implementation for the methods. To provide support for new APIs which support the use of closures and also which can run on Multi core platforms there has to be some way to add these APIs to existing classes.

For example, methods like for Each, map, reduce, filter which act on a collection can be added to the Collection class directly or create a new interface and let all the collection API implement them or leave it to the user of the API to implement the new interface.

The first 2 approaches would lead to breaking lots of existing code because of the lack of implementation of these new methods in the interface. The last approach is possible, but it doesn’t enhance the collection API out of the box.

The team which handles JSR-335 thought of a way to add default implementation to the interfaces, which gives an option for the implementor to override the method or to leave it as is. This way new APIs can be added to the Collection class without breaking the existing code and yet provide the full support of the closures to the existing code.

JSR 310

This section adds new Date and Time API to Java for avoiding any problems arise out of the existing java.util.Data classes.

Method References

Method references provide easy-to-read lambda expressions for methods that already have a name.

Other Changes

  • Removal of PermGen
  • JDK 8 includes Java Mission Control 5.3
  • Default Methods in the Java Programming Language are supported by the byte code instructions for method invocation.
  • Classes and interfaces have been added to the java.util.concurrent package.
  • JDBC 4.2 introduces new features.
  • Nashorn Javascript Engine
  • Repeating Annotations provide the ability to apply the same annotation type more than once to the same declaration or type use.

Apart from the above changes, there are ton of new features and changes introduced as part of the Java 8 release.

32

Share

Let's Discuss Your Project

Get free consultation and let us know your project idea to turn
it into an amazing digital product.

Let’s talk

NEWS & BLOG

Releted Blogs

Seven Wearable App Technology Trends to Watch Out for in 2022

Hire Developer Dec 28th, 2020

Seven Wearable App Technology Trends to Watch Out for i...

Read more
How On-demand Grocery Delivery App Benefits Your Store and Expands Business

Hire Developer Jun 9th, 2020

How On-demand Grocery Delivery App Benefits Your Store ...

Read more
How On-demand Food Delivery App Help Your Restaurant Business to Grow

Hire Developer May 20th, 2020

How On-demand Food Delivery App Help Your Restaurant Bu...

Read more

INQUIRY

Let's get in touch

UNITED STATES

31236 Meadowview Square,
Delmar, DE 19940, USA

Sales: +1 (732) 927-5544

UNITED KINGDOM

13 Layton Road, Hounslow,
London, TW3 1YJ

Sales: +44 7404 607567

AHMEDABAD

A-201, The Capital, Science City Rd, Ahmedabad, Gujarat 380060.

Sales: +91 635-261-6164