8293  Reviews star_rate star_rate star_rate star_rate star_half

Learning Modern Java

Java, introduced in 1996, has seen constant evolution with new features and better performance. Initially, releases were infrequent, allowing developers to specialize in existing features, often...

Read More
Duration 1 day
Course Code MOD-JAVA
Available Formats Classroom

Overview

Java, introduced in 1996, has seen constant evolution with new features and better performance. Initially, releases were infrequent, allowing developers to specialize in existing features, often missing out on later ones. As a result, catching up with new features across multiple Java versions can be challenging for busy developers.

This one-day course will provide students with an updated understanding of using the newer features of Java found in Java 8 through Java 17. The goal of this course is to provide students with an overview of the basic features introduced by version as well as hands-on experience working with these features. As such, the modules will include an introduction to the concepts, demonstrations of the features at work and then an opportunity for students to put the concepts into practice. Students will leave this course with the ability to pragmatically utilize the new features found in the recent Java releases.

Skills Gained

  • Be able to use key features of Java 8, including Lambdas, Functional Interfaces, Collection enhancements using Lambdas, Java Streams API,and Java Interface enhancements such as default and static methods.
  • Be able to use Java 9 features, such as Modules for project file management, Java Shell, and Reactive Streams
  • Be able to use Java 10 and 11 features, such as Local Variable type inference (the var type), running Java code without requiring a ‘javac’ compile, and additional String methods
  • Be able to use the Java 17 features such as Switch syntax improvements, sealed classes, Records, and TextBlocks.
  • Explore the features recently released in Java 21, such as Virtual Threads, Record patterns, pattern matching for switch and more

Who Can Benefit

  • Java developers wanting to update their Java skills to leverage newer features of Java
  • Architects wanting to understand newer Java features and how they may fit into a solution

Prerequisites

  • Experience with basic Java concepts, such as Java Collections, Interfaces, etc
  • Experience with IDEs, such as IntelliJ, Eclipse, or Visual Studio Code

Course Details

Course Outline

Overview of features by release version

  • Java 8 enhancements
  • Java 9 & 10 enhancements
  • Java 11 enhancements
  • Java 17 enhancements
  • The new release model and LTS
  • Garbage collectors

Java 8: Lambdas and Functional Interfaces

  • Functional interfaces
  • Writing Lambda functions
  • Invoking Lambda functions
  • Collection enhancements that use Lambdas
  • Default and Static methods on interfaces and Method references
  • Lab: Implement search, sort, and formatting using functional interface and Lambda expressions

Java 8: Java Streams API and other additions

  • Method references
  • Optional
  • Java Streams API
  • Chaining and composing Lambdas
  • Java Time enhancements
  • Lab: Enhancing prior lab to use streams API and chaining.

Java 9-11: Reactive Streams, HttpClient and More

  • Reactive Streams
  • Additional String methods
  • Local variable type inference
  • Java Shell
  • HTTP Client
  • Modules
  • Lab: Handling remote requests using HttpClient and Asynchronous requests

Java 12-17: Records, Text Blocks and more

  • Java Records
  • Textblocks
  • Switch syntax improvement
  • Sealed classes
  • Lab: Utilizing Records, TextBlocks and Switch enhancements for clean code

Java 18-21: Catching up to today

  • Simple Web Server
  • Record Patterns
  • Pattern matching for Switch
  • Virtual threads
  • Scoped Values (preview)
  • String templates (preview)

Schedule

FAQ

Does the course schedule include a Lunchbreak?

Classes typically include a 1-hour lunch break around midday. However, the exact break times and duration can vary depending on the specific class. Your instructor will provide detailed information at the start of the course.

What languages are used to deliver training?

Most courses are conducted in English, unless otherwise specified. Some courses will have the word "FRENCH" marked in red beside the scheduled date(s) indicating the language of instruction.

What does GTR stand for?

GTR stands for Guaranteed to Run; if you see a course with this status, it means this event is confirmed to run. View our GTR page to see our full list of Guaranteed to Run courses.

Does Ascendient Learning deliver group training?

Yes, we provide training for groups, individuals and private on sites. View our group training page for more information.

What does vendor-authorized training mean?

As a vendor-authorized training partner, we offer a curriculum that our partners have vetted. We use the same course materials and facilitate the same labs as our vendor-delivered training. These courses are considered the gold standard and, as such, are priced accordingly.

Is the training too basic, or will you go deep into technology?

It depends on your requirements, your role in your company, and your depth of knowledge. The good news about many of our learning paths, you can start from the fundamentals to highly specialized training.

How up-to-date are your courses and support materials?

We continuously work with our vendors to evaluate and refresh course material to reflect the latest training courses and best practices.

Are your instructors seasoned trainers who have deep knowledge of the training topic?

Ascendient Learning instructors have an average of 27 years of practical IT experience and have also served as consultants for an average of 15 years. To stay current, instructors spend at least 25 percent of their time learning new, emerging technologies and courses.

Do you provide hands-on training and exercises in an actual lab environment?

Lab access is dependent on the vendor and the type of training you sign up for. However, many of our top vendors will provide lab access to students to test and practice. The course description will specify lab access.

Will you customize the training for our company’s specific needs and goals?

We will work with you to identify training needs and areas of growth.  We offer a variety of training methods, such as private group training, on-site of your choice, and virtually. We provide courses and certifications that are aligned with your business goals.

How do I get started with certification?

Getting started on a certification pathway depends on your goals and the vendor you choose to get certified in. Many vendors offer entry-level IT certification to advanced IT certification that can boost your career. To get access to certification vouchers and discounts, please contact info@ascendientlearning.com.

Will I get access to content after I complete a course?

You will get access to the PDF of course books and guides, but access to the recording and slides will depend on the vendor and type of training you receive.

How do I request a W9 for Ascendient Learning?

View our filing status and how to request a W9.

Reviews

ExitCertified gave a great course on AWS that covered all of the basics in depth with good lab materials.

Class was very informative, although one lab didnt but will try again later

It was very informative and covered all the required materials along with handson labs for practice.

Good training materials and lecture. And hands on lab and the instructor guiding was good.

ExitCertified gave me some good trainings and I got to learn through doing labs.