Download Full Outline
Course
Migrating to Java 17 | Java 17 New Features & Skills
CompTIA Certified Badge
Hands-on Java Workshop: Gain the skills required to create efficient, scalable high-performance applications using Java.
ID:TT2135
Duration:5 Days
Level:Intermediate
Format:

What You'll Learn

Overview

CompTIA Authorized Partner Badge

There have been a lot of changes in the Java programming language since the release of Java 11 in September of 2018. Migrating to Java 17 / Java 17 New Features and Skills is a one day course that focuses on the changes that will be most noticable for Java developers who will make the transition from Java 11 to Java 17.

This course blends expert instruction and practical, hands-on experience, focusing on bridging the gap between your current Java knowledge and the latest version. Understanding that many developers are now transitioning projects from older versions of Java, this course is your key to making that shift both quickly and effectively. Throughout the course, you'll delve into Java 17's new features, such as the innovative use of Records for data management and the enhanced String and Text Blocks for improved text handling. These topics, along with the introduction of Sealed Classes and the refined approach to Switch Expressions and Pattern Matching, are more than just updates; they are pivotal enhancements that will streamline your coding practice. The real-world labs enable you to quickly pick up useful practical skills you'll be able to apply seamlessly into your work.

Whether you're upgrading existing projects or embarking on new ones, the skills and insights gained here will empower you to use Java 17 efficiently and innovatively. This course is more than just an upgrade in your Java knowledge; it's a comprehensive enhancement of your development skills, preparing you to tackle modern challenges with renewed expertise and confidence.

Course Schedule Available By Request - Contact Us
Expand All

Objectives

Working in an interactive learning environment, led by our expert facilitator, you'll explore:

  • Mastering Records in Java 17: Gain a thorough understanding of how to utilize Records in Java 17 for efficient data
  • handling, enabling you to simplify data modeling and ensure more concise and readable code.
  • Advanced String and Text Block Management: Develop the ability to effectively use the new String and Text Block
  • features in Java 17. This includes mastering methods like strip(), isBlank(), and repeat(), as well as
  • understanding the nuances of indentation in text blocks for improved text manipulation.
  • Implementing Sealed Classes and Interfaces: Acquire the skills to implement sealed classes and interfaces in Java 17, enhancing your ability to create more secure, type-safe, and maintainable code.
  • Utilizing Enhanced Switch Expressions and Pattern Matching: Learn to effectively use enhanced switch expressions and pattern matching for instanceof in Java 17. This skill is crucial for writing more concise and error-resistant code.
  • Efficient Exception Handling Techniques: Master the enhanced exception handling features in Java 17, such as the
  • improved try-with-resources statement and more informative NullPointerExceptions, to write more robust and reliable Java applications.
  • Applying Modern Java Development Techniques: Develop the ability to apply these new Java 17 features in real-world scenarios. This includes integrating these skills into existing projects, enhancing your capacity to upgrade and modernize Java applications efficiently.

Specific Java 17 features that are covered in the course including:

  • Switch Expressions
  • Text blocks
  • Pattern matching for instance of; Introducing records as carrier of immutable data

Specific Java 21 features that are covered in the course including:

  • Sequenced Collections
  • Pattern matching in Switch statements
  • Record Patterns

Audience

This is an intermediate- level Java programming course, designed for experienced Java 11 developers who wish to get up and running with Java 17 immediately. Attendees should have a working knowledge of developing Java 11 applications.

This course is not for non-developers, or developers new to Java.

Pre-Requisites

This is an intermediate- level Java programming course, designed for experienced Java 11 developers who wish to get up and running with Java 17 immediately. Attendees should have a working knowledge of developing Java 11 applications.

This course is not for non-developers, or developers new to Java.

Agenda

1. Versions and Features

  • Quick refresh of Java versions since Java 8
  • (Non) LTS releases
  • Preview features
  • Java Language Specifications
  • Java Specification Requests
  • Java Enhancement Proposals
  • Tutorial: IntelliJ Community Edition 2023 QuickStart (Using Maven) (Eclipse also available - please inquire)

2. Records

  • Data objects in Java
  • Introduce records as carrier of immutable data
  • Defining records
  • The Canonical constructor
  • Compact constructors
  • Lab: Records

3. String and Text Blocks

  • Discuss the definition of whitespace in Java
  • Introduce the strip() methods of the String class
  • The isBlank() and repeat() methods introduced in Java 11
  • Using the lines() method to construct a Stream instance using a String
  • Compact strings
  • Introducing Text Blocks
  • Indentation in text blocks
  • Lab: Text Blocks

4. Sealed Classes

  • Introduce sealed classes
  • The sealed and permits modifier
  • Sealed interfaces
  • Sealed classes and pattern matching
  • Lab: Sealed Classes

5. Switch Expressions

  • Switch Expressions
  • Using yield
  • Discuss switch fall through
  • Lab: Switch Expressions

6. Pattern Matching for instanceof

  • Pattern Matching for instanceof
  • Scope of variable when using pattern matching
  • Refining Patterns in switch
  • Dominance of pattern labels
  • Lab: Pattern Matching

7. Exception Handling

  • Enhanced try-with-resources
  • Helpful NullpointerExceptions
  • Excluding parameter names in error messages
  • Lab: Helpful Nullpointers

8. More Updates

  • Private methods in interfaces
  • The forRemoval and since attributes of the Deprecated annotation
  • Multi-release JAR files
  • Javadoc updates
  • Class-Data Sharing
  • Application Class-Data
  • CompactNumberFormat
  • Lab: Creating a Multi-Release Jar file

Related Courses

Core Java Programming Developer's Workshop
Fast Track to Core Java Programming for OO Experienced Developers
Migrating to Java 17 | Java 17 New Features & Skills
Migrating Java 11 to Java 21 | Java 21 New Features and Skills

Connect with us

Tailor your learning experience with Trivera Tech. Whether you need a custom course offering or want to schedule a specific date and time for corporate training, we are here to help. Our team works with you to design a solution that fits your organization's unique needs; whether that is enrolling a small team or your entire department. Simply let us know how many participants you'd like to enroll and the skills you want to develop, and we will provide a detailed quote tailored to your request.

Contact Trivera Today to discuss how we can deliver personalized training that equips your team with the critical skills needed to succeed!