
Master practical java-8 concepts through hands-on lessons on lambdas, default and static methods, predicates, streams, date time, EPA, and more, led by an industry expert.
Set up your Java development environment by downloading the team's community edition for your OS, installing Java 1.8, then create a new project and generate a simple main program skeleton.
Explore how default methods in Java 8 interfaces enable adding new functionality with backward compatibility, allowing existing classes to inherit behavior without changes.
Learn how static methods in Java 8 interfaces work: declare and call via the interface name, not via implementing classes, with default methods supporting backward compatibility.
Master the concept of functional interfaces in Java 8, emphasizing the single abstract method, and learn how to enforce a one-method contract while distinguishing from interfaces with multiple methods.
Explore the shift from object oriented to functional programming in Java 8 by using a functional interface and a lambda expression to implement a single abstract method in one line.
Explore converting traditional Java methods into lambda expressions, turning named methods into anonymous functions, and using a direct functional interface to enable lambda syntax in practical scenarios.
Learn to convert a normal method to a lambda expression by defining a functional interface with a single abstract method, inferring return types, and simplifying calculator-style operations in Java 8.
From the practical Java-8 mastery course, learn to replace a runnable implementation with a lambda expression, converting a functional interface with a single abstract method into concise Java-8 code.
Explore Java 8 predicates using the predicate interface, lambda expressions, test methods, and composing conditions with and, or, negate, including isEqual and stock and list examples.
Explains how the double colon operator replaces lambda expressions by referencing instance, static, and constructor methods, using a functional interface and an employee example for java-8 mastery.
Explore Java 8 streams basics, converting collections to streams, applying filter and map with lambda expressions, and collecting results while learning lazy evaluation.
demonstrate how to find min and max on streams in Java 8 using comparator-based lambdas, and how to handle duplicates with distinct and collect results.
Explore Java streams with operations like filter, distinct, skip, peek, sort, and collect to process and inspect elements.
Learn create streams from collections and primitive types, box streams to object streams, and use range and range closed to generate sequences. Apply concat, limit, and foreach to process data.
Learn how to use Java 8 Optional to safely handle nullable values without null checks. Practice using Optional.of, Optional.ofNullable, isPresent, and ifPresent to extract values or provide fallbacks.
Explore how to use the stream reduce function in Java 8 to sum numbers in a single line. Handle the optional result and understand the accumulator logic across elements.
Leverage stream operations on a set to filter numbers and collect them into a set. Then transform the stream into a map using key and value mappings.
Demonstrates creating a stream from a collection, using collectors to compute the average and summarizing statistics (count, min, max, average), and combining summaries from multiple streams.
Explore sequential vs parallel streams, where parallel streams run on multiple threads and may not preserve order, unlike sequential streams; apply this to faster processing when order isn't crucial.
Learn Java 8 streams via a practical file operation case study that loads a data file, parses lines, filters sales records, and collects matching business names with sales data.
Leverage Java 8 streams to convert raw data into a map, using names as keys and sales figures as values, then parse to integers and query sales by key.
Explore map and flatMap in streams, compare one-to-one transformations with one-to-many flattening, and learn how to collect transformed results into a list.
Explore the Java 8 date-time API, focusing on the java.time package and LocalDate, LocalTime, and LocalDateTime. Learn to create, inspect, and manipulate dates and times with key components.
Explore the Java 8 date-time API by manipulating local dates and times: add and subtract days, months, and years, print results, and understand before and after calculations.
Explore Java 8 date-time API case study by calculating an employee's total experience using LocalDate and Period between start date and today, extracting years, months, and days.
Explore the Java 8 date-time API to handle time zones, zone IDs, and local date-time across Berlin and Los Angeles, including GMT offsets and instants.
Your wait for the practical hands-on course on Java-8 is over. This course is structured with a key focus on learning by doing.
In this course, you will learn below Java-8 concepts and techniques in a hands-on based approach:
Introduction to Java 8
Interface Enhancements in Java 8
Default methods inside the interface
Static methods inside the interface
Functional interfaces
Inbuilt functional interfaces
Lambda expressions
Usage of Lambda expressions
Concept of Predicates
Method reference
Double colon operator
Constructor reference
Streams
Streams filter, map, count
Streams filter and lazy
Stream and forEach
Stream min, max, sorted, distinct
Stream peek and skip
Stream range and rangeClosed
Stream reduce
Stream Optional
Stream toSet and toMap
Stream averaging and summarizing
Stream and File operations
Stream Map and FlatMap
Parallel Stream
Java 8 and Date Time API
You will get the source code of every topic with examples so that you can refer to them while learning the concepts.
After taking this course you will be able to apply the concepts in any Java project. If you are a beginner then you will learn the new features of java 8 and if you are already an experienced developer then you will be able to apply these concepts and upgrade your older java projects.
Topics are explained with examples and notes are taken by writing comments on the code, which will help in future reference of the concepts.
You can bookmark any topic while watching and you can ask your questions in the question forum.