Java Programming 2 - Java Advanced Developer

Take your Java expertise further

Build on your existing Java knowledge with this advanced five-day course focused on real-world application. You'll explore Java 17 features and sharpen your skills through interactive learning, preparing you for certification and confident enterprise-level development. 

Learning objectives
  • Code with generics and wildcards 
  • Use lambda expressions and method references 
  • Implement functional programming techniques 
  • Work with streams and collectors 
  • Handle exceptions and assertions effectively 
  • Build modular applications 
  • Manage concurrency and threading 
  • Use annotations and reflection 
  • Read/write files using I/O and NIO 
  • Apply secure coding principles 

What you’ll learn

You'll gain first-hand experience with advanced Java features that underpin modern software development. This includes working with functional programming constructs, managing concurrency, building modular systems, and writing secure, maintainable code using the latest techniques. 

Generics and collections

Learn how to write robust, type-safe code using Java generics. You’ll explore generic classes and methods, bounded types, and type inference, before diving into Java’s core collection types. Understand when and how to use lists, sets, maps, and queues effectively, and develop key techniques for implementing hashCode, equals, compareTo, and Comparator properly to avoid common pitfalls in collection handling.  

Functional programming essentials

Explore functional programming as it applies to modern Java. Understand the use of functions as first-class citizens and how to write pure and higher-order functions. Learn to apply Java’s built-in functional interfaces, compose functions effectively, and work with immutability to reduce side effects. These principles will help you write more predictable, maintainable, and efficient Java applications.  

Handling exceptions and localisation

Enhance your ability to write robust applications by creating and managing custom exceptions, using assertions appropriately, and applying structured error handling. You’ll also explore Java’s localisation features, including date/time formatting and resource bundles. This is especially useful if you’re developing applications for global audiences or working in environments that require robust, maintainable error and message handling.  

Concurrency and multithreading

Understand how to design responsive, thread-safe Java applications. You’ll explore the fundamentals of Java threading, the memory model, and concurrency challenges such as race conditions and deadlocks. This course also covers how to implement synchronisation mechanisms and use tools like ExecutorService, thread pools, and parallel streams to improve performance while maintaining application stability and consistency.  

What’s included
  • Five days of instructor-led training 
  • Hands-on live lab exercises 
  • Expert tutors with real-world experience 
  • Comprehensive digital materials 
  • Certification preparation guidance 

Key facts

Ideal for

Experienced Java developers looking to deepen their technical capability and work on enterprise-level applications. 

Prerequisites

Learners must be confident in Java fundamentals including object-oriented principles and simple application development. 

Learning experience

Our experienced trainers and interactive labs create a focused, practical environment – so you can put theory into practice from day one. 

FAQs

This course equips experienced Java developers with in-depth knowledge of advanced programming concepts. It supports exam preparation for Oracle certification and enhances your ability to contribute to complex Java-based projects. 

Is this course suitable for beginners?

No. This course is designed for those who already understand Java basics. If you're new to Java, we recommend starting with our Java Programming 1 / Java Developer course. 

Will this course help me understand how to use Java Streams effectively?

Yes. The course includes a dedicated section on Java Streams, focusing on how to use them for data transformation and processing. You’ll learn about stream creation, intermediate and terminal operations, collectors, optional handling, and performance considerations. It’s ideal for developers who want to write more efficient, declarative code and make full use of Java’s functional programming capabilities. 

Does the course prepare me for Java certification?

Yes. This course supports preparation for Oracle Certified Professional exams Java SE 8 Programmer II, Java SE 11 Developer and Java SE 17 Developer, when combined with our Java Programming 1 course. 

What training format is used?

This is a live virtual classroom course. You’ll learn from an experienced Java professional in real time, with the chance to ask questions and get feedback as you go. The format includes hands-on live labs and practical exercises, giving you the opportunity to apply new skills immediately in a supportive, interactive environment. 

How can this course support my career development?

This course deepens your Java expertise and strengthens your ability to contribute to more complex projects. It’s well-suited for developers aiming to take on senior or specialist roles, and it supports your preparation for recognised Oracle Java certifications, helping you build credibility and open up new career opportunities in enterprise-level development. 

Why study with StayAhead
96% customer satisfaction

We combine experience and passion to deliver training that meets the highest standards

30+ years’ experience

Industry-leading specialists delivering high-impact IT training  

Experiential instructor-led training

Courses are delivered by experienced instructors using hands-on, practical live labs 

We're here to help
Talk to our training specialists

Not sure which course meets your needs? Our expert advisors are here to guide you, offering clear, practical advice to help you choose the right training for your career or technical needs. 

Business transformation
Technical training for your team

Want to advance your team’s technical expertise? Our tailored IT training programmes combine expert instruction with practical, hands-on live labs for an immersive learning experience. Speak with one of our development consultants to design a solution that fits your business needs.

Quote request

Please complete the form to ensure your quote is accurate and we will contact you soon.

Page {{ step }} of 2

Back Next