Download Forrester’s “Vendor Landscape, Application Performance Management” report that examines the evolving role of APM as a key driver of customer satisfaction and business success, brought to you in partnership with BMC.
Friends, in the last tutorial we had a detailed introduction to Java
8’s Feature of Closures – Lambda Expressions. During the discussion, we
understood the issues with the plain old Anonymous Inner Classes,
learnt the Java Closures (Lamba Expressions) Syntax, and also practiced
some of our own Java Lambda Expression examples along with the
conceptual and practical understanding of Functional Interfaces, Method
References, Constructor References and Default Methods.
In this Java Tutorial we are going to discuss Java 8’s
modification to the Java Collections API. The Java Collections Framework
is being enhanced in order to get the benefits out of the latest Java 8
Feature that is Closures. If you are new to the concept of Java
Closures or Lambda Expressions, I recommend you go through my
previous post: Introduction to Java Closures – Lambda Expressions.
Java Lambda Expressions would surely change some of our programming
habits and also the way we look at the language, including the various
Java APIs. When a feature like Lambda Expression is added to a programming
language, it becomes extremely important to utilize the new feature to
empower the overall programming model along with the existing set of
libraries. With addition of Closures to Java, the existing Java
Collection Framework will start looking weaker and outdated. The Java
Collections framework was introduced in Java 1.2, and since then its
core interfaces have never been changed. This is because, the Java
Collections framework is so widely used, that any changes to it will
surely broke many existing functionalities, and that’s why it is not
easy to completely rewrite the Java Collections API. There was another
option to keep the existing Collections API as is, and add an additional
Lambda Expression friendly version of the API, but that would lead to
tremendous amount of changes in the existing code, which depends upon
the Collections API. Also applications will have to maintain two
different versions of the library, and what if somebody wants to use a
mix of old and new features? To overcome these challenges, Java 8 has
added new set of methods to the existing collection classes and
interfaces. Having these methods under the belt, the Java Collections
framework will work as it used to be; and will also have an additional
potential to support Java’s Lambda Expressions or Closures.
See Forrester’s Report, “Vendor Landscape, Application Performance Management” to identify the right vendor to help IT deliver better service at a lower cost, brought to you in partnership with BMC.