SlideShare a Scribd company logo
© 2013 KMS Technology
JAVA 8 FEATURES
TRUNG NGUYEN
TECHCON 2014
KMS TECHNOLOGY VIETNAM
JAVA VERSION HISTORY
JDK 1.0 (1996) JDK 1.1 (1997)
inner classes
JavaBeans, JDBC, RMI,
reflection, JIT
JDK 1.2 (1998)
strictfp keyword
Swing API,
Collections API
J2SE 1.3 (2000)
JNDI, JPDA
JAVA 8 FEATURES
J2SE 1.4 (2002)
assert keyword
Image IO API, Java Web
Start
J2SE 5.0 (2004)
generics, annotations,
enum, varagrs
Java SE 6 (2006)
Performance
improvements
Scripting Language, Java
Compiler API
Java SE 7 (2011)
try statement,
invokedynamic in JVM
String in switch,
diamond operation
JAVA 8 RELEASE (MAR 18, 2014)
Java 7
Lambda Expressions
Default Methods
Stream API
New Date/Time APINashorn
Java 8
JAVA 8 FEATURES
Others
LAMBDA EXPRESSIONS
Java 7
Lambda Expressions
Default Methods
Stream API
New Date/Time APINashorn
Java 8
Others
JAVA 8 FEATURES
LAMBDA EXPRESSION
JAVA 8 FEATURES
Functions in Functional Programming
Functions in Java
 Are arguments, return values from other functions
 Are variables and be able stored in data structures
 No new types such as function types
 Functional Interfaces: are interfaces with exactly one method
 java.util.function package
Consumer, Function, Predicate, Supplier, BiFunction, DoubleConsumer,
IntPredicate, LongSupplier, …
Lambda Expressions are functions without declaration of access
modifier, return value declaration, and name
LAMBDA EXPRESSION SYNTAX IN JAVA
(arguments) -> { body }
JAVA 8 FEATURES
anonymous inner class
lambda expression
single-line lambda expression
no-parameter lambda expression
METHOD REFERENCES
JAVA 8 FEATURES
Lambda expressions only call an existing method
 Reference to a static method
 Reference to an instance method of a particular object
 Reference to an constructor
// int Comparator.compare(T t1, T t2)
// void Consumer.accept(T t)
// T IntFunction.apply(int value)
WHY LAMBDA EXPRESSIONS IN JAVA?
JAVA 8 FEATURES
 Encourage functional programming
 Easier to distribute processing of collections over multiple threads
 More succinct and clear than anonymous inner classes
Is Lambda Expression a syntactic-sugar for Anonymous Inner Class?
HOW LAMBDA EXPRESSIONS WORK?
The lambda expression is represented by a new method, and is
invoked at run-time using invokedynamic & LambdaMetafactory
JAVA 8 FEATURES
JVM generation
JVM translation
Lambda Expression is not a syntactic-sugar for Anonymous Inner Class
STREAM API
Java 7
Lambda Expressions
Default Methods
Stream API
New Date/Time APINashorn
Java 8
Others
JAVA 8 FEATURES
DEFINITION OF STREAM
JAVA 8 FEATURES
Streams are a FP design pattern for processing
sequences of elements sequentially or in parallel
STREAM IN JAVA 8 - EXAMPLE
Given a list of photos, I want to find 5 photo names
that follow top 3 photos whose average rating is
higher than 6, sorted by rating and the total amount
of ratings given
JAVA 8 FEATURES
IMPERATIVE STYLE
JAVA 8 FEATURES
STREAM STYLE
JAVA 8 FEATURES
Coding in Stream API-way
 Internally iterates through the elements
 Manipulate the collection data easier and faster
 Focus on "what" to do instead of "how" to do it
 The ability to use multiple processor cores for collection
processing
STREAM OPERATIONS
JAVA 8 FEATURES
Intermediate operations
- Lazy processing
- Stateless: filter, map, flatMap, peek
- Stateful: distinct, sorted, skip
- Short-circuiting : limit
Terminal operations
- Eager processing
- forEach, reduce, collect, max, count
- Short-circuiting: anyMatch, allMatch,
noneMatch, findFirst, findAny
- Escape-hatch: iterator, spliterator
DEFAULT METHODS
Java 7
Lambda Expressions
Default Methods
Stream API
New Date/Time APINashorn
Java 8
Others
JAVA 8 FEATURES
How to add forEach(Consumer) method into List interface?
persons.forEach(person -> personRepo.save(person));
DEFAULT METHODS
JAVA 8 FEATURES
Default Methods allow to add default implementations to new and/or
existing methods of existing interface
CLASS-EXTENDED IN JAVA 8
JAVA 8 FEATURES
Multiple Inheritances  behaviors only, no state
‘Diamond Problem’  Solving manually
CLASS-EXTENDED IN OTHER LANGUAGES
Scala Traits (or Ruby Mix-ins)
JAVA 8 FEATURES
C# Extension Methods
NEW DATE & TIME API
Java 7
Lambda Expressions
Default Methods
Stream API
New Date/Time APINashorn
Java 8
Others
JAVA 8 FEATURES
DATE AND TIME API
 Immutable-value classes
 Domain-driven design
 Separation of chronologies
JAVA 8 FEATURES
Problems of current Date Time API
 Date, Calendar and SimpleDateFormatter are not thread-safe
 Poor API design: years start at 1900, months start at 0
 No Non-timezone dates/times, durations, periods and intervals
New Date and Time API
Great but not a Java Standard API
Joda-Time
NEW DATE AND TIME API EXAMPLE
JAVA 8 FEATURES
 LocalDate, LocalTime, LocalDateTime, ZonedDateTime
 Clock, Duration, Period, ZoneId, ZoneOffset
Domain-driven Date and Time
Date and Time API classes
NEW JAVASCRIPT ENGINE (NASHORN)
Java 7
Lambda Expressions
Default Methods
Stream API
New Date/Time APINashorn
Java 8
Others
JAVA 8 FEATURES
NEW JAVASCRIPT ENGINE (NASHORN)
JAVA 8 FEATURES
Why Nashorn Engine?
 Full 100% ECMA262-compliant (edition 5.1)
 Compiles JS to Java byte-code based on invokedynamic
 Not match V8 performance, but 2-10x faster than Rhino
 jjs command line tool
Applying Nashorn: Avartar.js and Project Avatar
OTHER FEATURES
Java 7
Lambda Expressions
Default Methods
Stream API
New Date/Time APINashorn
Java 8
Others
JAVA 8 FEATURES
OTHER FEATURES
JAVA 8 FEATURES
Static Methods on Interfaces
At beginning, Java allows static fields and static inner types in
interface, why not static methods? Yes, it is in Java 8
Optional Class
Type Annotations
3rd-parties like Checker Framework use Java Compiler Plug-in and
Pluggable Annotations Processing APIs to develop their own analyses
OTHER FEATURES (CON’T)
JAVA 8 FEATURES
Repeating Annotations
Method Parameter Reflection
 How to get name of method parameters?
 java.lang.reflect.Executable.getParameters
 Compile the source file with the -parameters
CONCLUSIONS
New Features in Java 8
Lambda Expressions
Default Methods
Stream API
New Date/Time APINashorn
Others
JAVA 8 FEATURES
Change the way we
write applications
RESOURCES
• http://www.oracle.com/technetwork/java/javase/8-
whats-new-2157071.html
• http://www.techempower.com/blog/2013/03/26/everyt
hing-about-java-8/
• http://www.takipiblog.com/2014/03/18/5-features-in-
java-8-that-will-change-how-you-code/
• http://java.dzone.com/articles/think-twice-using-java-8
• http://www.infoq.com/articles/java-8-vs-scala
• Duke 8 image [http://www.takipiblog.com/]
• Stream image [http://ricianh.blogspot.com/]
Questions
JAVA 8 FEATURES
THANK YOU
© 2013 KMS Technology

More Related Content

What's hot (20)

PPTX
Ensemble methods in machine learning
SANTHOSH RAJA M G
 
PPTX
String, string builder, string buffer
SSN College of Engineering, Kalavakkam
 
PDF
Collections in Java Notes
Shalabh Chaudhary
 
PPTX
Feature Selection in Machine Learning
Upekha Vandebona
 
PDF
Collections Api - Java
Drishti Bhalla
 
ODP
Java Collections
parag
 
PDF
Chap 8. Optimization for training deep models
Young-Geun Choi
 
PDF
Arrays in Java
Naz Abdalla
 
PPTX
Arrays C#
Raghuveer Guthikonda
 
PPTX
What is Object Orientation?
AMITJain879
 
PPTX
Network programming in java - PPT
kamal kotecha
 
PPTX
Java(Polymorphism)
harsh kothari
 
PPT
Bayseian decision theory
sia16
 
PPTX
Hyperparameter Tuning
Jon Lederman
 
PPTX
Java string handling
Salman Khan
 
PPTX
Guide To Mastering The MySQL Query Execution Plan
Optimiz DBA
 
PDF
Classes and Objects
yndaravind
 
PPTX
anatomy of a jsp page & jsp syntax.pptx
Sameenafathima4
 
PPTX
Learning from imbalanced data
Aboul Ella Hassanien
 
Ensemble methods in machine learning
SANTHOSH RAJA M G
 
String, string builder, string buffer
SSN College of Engineering, Kalavakkam
 
Collections in Java Notes
Shalabh Chaudhary
 
Feature Selection in Machine Learning
Upekha Vandebona
 
Collections Api - Java
Drishti Bhalla
 
Java Collections
parag
 
Chap 8. Optimization for training deep models
Young-Geun Choi
 
Arrays in Java
Naz Abdalla
 
What is Object Orientation?
AMITJain879
 
Network programming in java - PPT
kamal kotecha
 
Java(Polymorphism)
harsh kothari
 
Bayseian decision theory
sia16
 
Hyperparameter Tuning
Jon Lederman
 
Java string handling
Salman Khan
 
Guide To Mastering The MySQL Query Execution Plan
Optimiz DBA
 
Classes and Objects
yndaravind
 
anatomy of a jsp page & jsp syntax.pptx
Sameenafathima4
 
Learning from imbalanced data
Aboul Ella Hassanien
 

Similar to Java 8 Features (20)

PPTX
Future of Java EE with Java SE 8
Hirofumi Iwasaki
 
PDF
New Features of Java7 SE
dogangoko
 
PPT
Java New Evolution
Allan Huang
 
PPTX
java new technology
chavdagirimal
 
DOCX
Java 7 Dolphin manjula kollipara
Manjula Kollipara
 
DOC
Course syllabus from ingenious
Colege Buz
 
DOC
Course syllabus from ingenious
Colege Buz
 
PDF
Java EE 6 workshop at Dallas Tech Fest 2011
Arun Gupta
 
PPTX
Lambda Behave - Java 8's Testing Framework
sara stanford
 
PDF
Java 8
jclingan
 
PDF
What's new in Java 8
jclingan
 
PPTX
The latest features coming to Java 12
NexSoftsys
 
PPTX
What's new in Java 11
Michel Schudel
 
PDF
Oracle Soa Suite 11g Performance Tuning Cookbook Osama Oransa
hyuryubettie60
 
PPTX
Introduction of Java 8 with emphasis on Lambda Expressions and Streams
Emiel Paasschens
 
PDF
Java EE 6 & GlassFish v3: Paving the path for the future - Spark IT 2010
Arun Gupta
 
PPTX
java web framework standard.20180412
FirmansyahIrma1
 
PDF
Java EE 6 : Paving The Path For The Future
IndicThreads
 
ODP
Nexthink Library - replacing a ruby on rails application with Scala and Spray
Matthew Farwell
 
PDF
Web Applications of the future: Combining JEE6 & JavaFX
Paul Bakker
 
Future of Java EE with Java SE 8
Hirofumi Iwasaki
 
New Features of Java7 SE
dogangoko
 
Java New Evolution
Allan Huang
 
java new technology
chavdagirimal
 
Java 7 Dolphin manjula kollipara
Manjula Kollipara
 
Course syllabus from ingenious
Colege Buz
 
Course syllabus from ingenious
Colege Buz
 
Java EE 6 workshop at Dallas Tech Fest 2011
Arun Gupta
 
Lambda Behave - Java 8's Testing Framework
sara stanford
 
Java 8
jclingan
 
What's new in Java 8
jclingan
 
The latest features coming to Java 12
NexSoftsys
 
What's new in Java 11
Michel Schudel
 
Oracle Soa Suite 11g Performance Tuning Cookbook Osama Oransa
hyuryubettie60
 
Introduction of Java 8 with emphasis on Lambda Expressions and Streams
Emiel Paasschens
 
Java EE 6 & GlassFish v3: Paving the path for the future - Spark IT 2010
Arun Gupta
 
java web framework standard.20180412
FirmansyahIrma1
 
Java EE 6 : Paving The Path For The Future
IndicThreads
 
Nexthink Library - replacing a ruby on rails application with Scala and Spray
Matthew Farwell
 
Web Applications of the future: Combining JEE6 & JavaFX
Paul Bakker
 
Ad

Recently uploaded (20)

PDF
TheFutureIsDynamic-BoxLang witch Luis Majano.pdf
Ortus Solutions, Corp
 
PPTX
Homogeneity of Variance Test Options IBM SPSS Statistics Version 31.pptx
Version 1 Analytics
 
PPTX
Agentic Automation Journey Series Day 2 – Prompt Engineering for UiPath Agents
klpathrudu
 
PDF
[Solution] Why Choose the VeryPDF DRM Protector Custom-Built Solution for You...
Lingwen1998
 
PPTX
Foundations of Marketo Engage - Powering Campaigns with Marketo Personalization
bbedford2
 
PDF
Automate Cybersecurity Tasks with Python
VICTOR MAESTRE RAMIREZ
 
PPTX
Help for Correlations in IBM SPSS Statistics.pptx
Version 1 Analytics
 
PDF
How to Hire AI Developers_ Step-by-Step Guide in 2025.pdf
DianApps Technologies
 
PDF
MiniTool Power Data Recovery 8.8 With Crack New Latest 2025
bashirkhan333g
 
PPTX
Home Care Tools: Benefits, features and more
Third Rock Techkno
 
PDF
Digger Solo: Semantic search and maps for your local files
seanpedersen96
 
PPTX
Agentic Automation: Build & Deploy Your First UiPath Agent
klpathrudu
 
PDF
AOMEI Partition Assistant Crack 10.8.2 + WinPE Free Downlaod New Version 2025
bashirkhan333g
 
PPTX
OpenChain @ OSS NA - In From the Cold: Open Source as Part of Mainstream Soft...
Shane Coughlan
 
PDF
SciPy 2025 - Packaging a Scientific Python Project
Henry Schreiner
 
PDF
Top Agile Project Management Tools for Teams in 2025
Orangescrum
 
PDF
Generic or Specific? Making sensible software design decisions
Bert Jan Schrijver
 
PDF
Build It, Buy It, or Already Got It? Make Smarter Martech Decisions
bbedford2
 
PDF
iTop VPN With Crack Lifetime Activation Key-CODE
utfefguu
 
PDF
Open Chain Q2 Steering Committee Meeting - 2025-06-25
Shane Coughlan
 
TheFutureIsDynamic-BoxLang witch Luis Majano.pdf
Ortus Solutions, Corp
 
Homogeneity of Variance Test Options IBM SPSS Statistics Version 31.pptx
Version 1 Analytics
 
Agentic Automation Journey Series Day 2 – Prompt Engineering for UiPath Agents
klpathrudu
 
[Solution] Why Choose the VeryPDF DRM Protector Custom-Built Solution for You...
Lingwen1998
 
Foundations of Marketo Engage - Powering Campaigns with Marketo Personalization
bbedford2
 
Automate Cybersecurity Tasks with Python
VICTOR MAESTRE RAMIREZ
 
Help for Correlations in IBM SPSS Statistics.pptx
Version 1 Analytics
 
How to Hire AI Developers_ Step-by-Step Guide in 2025.pdf
DianApps Technologies
 
MiniTool Power Data Recovery 8.8 With Crack New Latest 2025
bashirkhan333g
 
Home Care Tools: Benefits, features and more
Third Rock Techkno
 
Digger Solo: Semantic search and maps for your local files
seanpedersen96
 
Agentic Automation: Build & Deploy Your First UiPath Agent
klpathrudu
 
AOMEI Partition Assistant Crack 10.8.2 + WinPE Free Downlaod New Version 2025
bashirkhan333g
 
OpenChain @ OSS NA - In From the Cold: Open Source as Part of Mainstream Soft...
Shane Coughlan
 
SciPy 2025 - Packaging a Scientific Python Project
Henry Schreiner
 
Top Agile Project Management Tools for Teams in 2025
Orangescrum
 
Generic or Specific? Making sensible software design decisions
Bert Jan Schrijver
 
Build It, Buy It, or Already Got It? Make Smarter Martech Decisions
bbedford2
 
iTop VPN With Crack Lifetime Activation Key-CODE
utfefguu
 
Open Chain Q2 Steering Committee Meeting - 2025-06-25
Shane Coughlan
 
Ad

Java 8 Features

  • 1. © 2013 KMS Technology
  • 2. JAVA 8 FEATURES TRUNG NGUYEN TECHCON 2014 KMS TECHNOLOGY VIETNAM
  • 3. JAVA VERSION HISTORY JDK 1.0 (1996) JDK 1.1 (1997) inner classes JavaBeans, JDBC, RMI, reflection, JIT JDK 1.2 (1998) strictfp keyword Swing API, Collections API J2SE 1.3 (2000) JNDI, JPDA JAVA 8 FEATURES J2SE 1.4 (2002) assert keyword Image IO API, Java Web Start J2SE 5.0 (2004) generics, annotations, enum, varagrs Java SE 6 (2006) Performance improvements Scripting Language, Java Compiler API Java SE 7 (2011) try statement, invokedynamic in JVM String in switch, diamond operation
  • 4. JAVA 8 RELEASE (MAR 18, 2014) Java 7 Lambda Expressions Default Methods Stream API New Date/Time APINashorn Java 8 JAVA 8 FEATURES Others
  • 5. LAMBDA EXPRESSIONS Java 7 Lambda Expressions Default Methods Stream API New Date/Time APINashorn Java 8 Others JAVA 8 FEATURES
  • 6. LAMBDA EXPRESSION JAVA 8 FEATURES Functions in Functional Programming Functions in Java  Are arguments, return values from other functions  Are variables and be able stored in data structures  No new types such as function types  Functional Interfaces: are interfaces with exactly one method  java.util.function package Consumer, Function, Predicate, Supplier, BiFunction, DoubleConsumer, IntPredicate, LongSupplier, … Lambda Expressions are functions without declaration of access modifier, return value declaration, and name
  • 7. LAMBDA EXPRESSION SYNTAX IN JAVA (arguments) -> { body } JAVA 8 FEATURES anonymous inner class lambda expression single-line lambda expression no-parameter lambda expression
  • 8. METHOD REFERENCES JAVA 8 FEATURES Lambda expressions only call an existing method  Reference to a static method  Reference to an instance method of a particular object  Reference to an constructor // int Comparator.compare(T t1, T t2) // void Consumer.accept(T t) // T IntFunction.apply(int value)
  • 9. WHY LAMBDA EXPRESSIONS IN JAVA? JAVA 8 FEATURES  Encourage functional programming  Easier to distribute processing of collections over multiple threads  More succinct and clear than anonymous inner classes Is Lambda Expression a syntactic-sugar for Anonymous Inner Class?
  • 10. HOW LAMBDA EXPRESSIONS WORK? The lambda expression is represented by a new method, and is invoked at run-time using invokedynamic & LambdaMetafactory JAVA 8 FEATURES JVM generation JVM translation Lambda Expression is not a syntactic-sugar for Anonymous Inner Class
  • 11. STREAM API Java 7 Lambda Expressions Default Methods Stream API New Date/Time APINashorn Java 8 Others JAVA 8 FEATURES
  • 12. DEFINITION OF STREAM JAVA 8 FEATURES Streams are a FP design pattern for processing sequences of elements sequentially or in parallel
  • 13. STREAM IN JAVA 8 - EXAMPLE Given a list of photos, I want to find 5 photo names that follow top 3 photos whose average rating is higher than 6, sorted by rating and the total amount of ratings given JAVA 8 FEATURES
  • 15. STREAM STYLE JAVA 8 FEATURES Coding in Stream API-way  Internally iterates through the elements  Manipulate the collection data easier and faster  Focus on "what" to do instead of "how" to do it  The ability to use multiple processor cores for collection processing
  • 16. STREAM OPERATIONS JAVA 8 FEATURES Intermediate operations - Lazy processing - Stateless: filter, map, flatMap, peek - Stateful: distinct, sorted, skip - Short-circuiting : limit Terminal operations - Eager processing - forEach, reduce, collect, max, count - Short-circuiting: anyMatch, allMatch, noneMatch, findFirst, findAny - Escape-hatch: iterator, spliterator
  • 17. DEFAULT METHODS Java 7 Lambda Expressions Default Methods Stream API New Date/Time APINashorn Java 8 Others JAVA 8 FEATURES
  • 18. How to add forEach(Consumer) method into List interface? persons.forEach(person -> personRepo.save(person)); DEFAULT METHODS JAVA 8 FEATURES Default Methods allow to add default implementations to new and/or existing methods of existing interface
  • 19. CLASS-EXTENDED IN JAVA 8 JAVA 8 FEATURES Multiple Inheritances  behaviors only, no state ‘Diamond Problem’  Solving manually
  • 20. CLASS-EXTENDED IN OTHER LANGUAGES Scala Traits (or Ruby Mix-ins) JAVA 8 FEATURES C# Extension Methods
  • 21. NEW DATE & TIME API Java 7 Lambda Expressions Default Methods Stream API New Date/Time APINashorn Java 8 Others JAVA 8 FEATURES
  • 22. DATE AND TIME API  Immutable-value classes  Domain-driven design  Separation of chronologies JAVA 8 FEATURES Problems of current Date Time API  Date, Calendar and SimpleDateFormatter are not thread-safe  Poor API design: years start at 1900, months start at 0  No Non-timezone dates/times, durations, periods and intervals New Date and Time API Great but not a Java Standard API Joda-Time
  • 23. NEW DATE AND TIME API EXAMPLE JAVA 8 FEATURES  LocalDate, LocalTime, LocalDateTime, ZonedDateTime  Clock, Duration, Period, ZoneId, ZoneOffset Domain-driven Date and Time Date and Time API classes
  • 24. NEW JAVASCRIPT ENGINE (NASHORN) Java 7 Lambda Expressions Default Methods Stream API New Date/Time APINashorn Java 8 Others JAVA 8 FEATURES
  • 25. NEW JAVASCRIPT ENGINE (NASHORN) JAVA 8 FEATURES Why Nashorn Engine?  Full 100% ECMA262-compliant (edition 5.1)  Compiles JS to Java byte-code based on invokedynamic  Not match V8 performance, but 2-10x faster than Rhino  jjs command line tool Applying Nashorn: Avartar.js and Project Avatar
  • 26. OTHER FEATURES Java 7 Lambda Expressions Default Methods Stream API New Date/Time APINashorn Java 8 Others JAVA 8 FEATURES
  • 27. OTHER FEATURES JAVA 8 FEATURES Static Methods on Interfaces At beginning, Java allows static fields and static inner types in interface, why not static methods? Yes, it is in Java 8 Optional Class Type Annotations 3rd-parties like Checker Framework use Java Compiler Plug-in and Pluggable Annotations Processing APIs to develop their own analyses
  • 28. OTHER FEATURES (CON’T) JAVA 8 FEATURES Repeating Annotations Method Parameter Reflection  How to get name of method parameters?  java.lang.reflect.Executable.getParameters  Compile the source file with the -parameters
  • 29. CONCLUSIONS New Features in Java 8 Lambda Expressions Default Methods Stream API New Date/Time APINashorn Others JAVA 8 FEATURES Change the way we write applications
  • 30. RESOURCES • http://www.oracle.com/technetwork/java/javase/8- whats-new-2157071.html • http://www.techempower.com/blog/2013/03/26/everyt hing-about-java-8/ • http://www.takipiblog.com/2014/03/18/5-features-in- java-8-that-will-change-how-you-code/ • http://java.dzone.com/articles/think-twice-using-java-8 • http://www.infoq.com/articles/java-8-vs-scala • Duke 8 image [http://www.takipiblog.com/] • Stream image [http://ricianh.blogspot.com/]
  • 32. THANK YOU © 2013 KMS Technology