About this course
The Advanced Java Programming course will take you to the next level as a Java programmer. You will learn advanced Java programming concepts, and techniques to improve your code. The course also covers some of the new language features in the later versions of Java.
What others say
Why you want to attend
You should attend the Advanced Java Programming course if:
- You are a Java programmer and you want to learn about the advanced aspects of the Java language.
- You are a Java programmer and you want to learn to write better Java code.
What you need to know first
Before you attend the Advanced Java Programming course:
- You must have attended our Java Programming course or already be comfortable with the fundamentals of the Java programming language.
- You should have at least 6 months practical experience programming in Java.
Price and duration
Price: R13,900.00 excluding VAT per delegate.
This price includes everything that you need:
- All course material, provided in an electronic format.
- An attendance certificate after the course, in PDF format.
Duration: 5 days.
The Advanced Java Programming course is presented virtually. Find out more about our virtual training and how it works.
Please check the course schedule for the next available date.
How to book
It’s so easy to book for the Advanced Java Programming course.
After we have received your booking, we will confirm that you are booked, and we’ll send you an invoice.
Detailed course contents
- Review of the Java platform.
- Distributed systems – RPC, RMI, CORBA, EJB
- Overview of JEE architecture.
- Overview of web services.
- SOAP vs REST web services.
- SOLID design principles.
- Enterprise design techniques.
Enhanced Language Features
- Java 1.4 assertions.
- Java 5 – annotations, generics, enums, enhanced for loop, auto-boxing/unboxing, varargs, static imports.
- Java 7 – binary literals, try-with-resources, multi-catch, type inference, strings in switches.
- Java 8 – functional interfaces, default methods, functional programming, lambda expressions.
- Java 9 – modularization, private methods in interfaces.
- Java 10 – local variable type inference.
- Java 14 – records and switch expressions.
- Java 15 – multi-line text blocks and sealed classes.
JavaBeans and Canonical Classes
- JavaBean rules.
- Canonical classes.
- Reflection API.
- Garbage collection and memory management.
- Object serialization.
- JavaBean XML encoding.
- Java Architecture for XML Binding (JAXB).
- File I/O.
- Java Database Connectivity (JDBC).
- Java Persistence API (JPA).
- Collections, Sets, Lists, Maps, Queues.
- Linked list, binary trees and hash tables.
- Iterator and Enumeration interfaces.
- Choosing the right collection and Big O notation.
- Generic algorithms, sorting and searching.
Threads and Concurrency
- Thread vs Runnable.
- Thread lifecycle.
- Thread synchronization.
- Timers and TimerTasks
- Concurrency API.
- Executors and ExecutorServices.
- Callables and Futures.
- Overview of generic classes.
- Syntax and type inference.
- Type erasure.
- Wildcards and bounds.
Lambdas and Streams
- Functional programming overview.
- @FunctionalInterface annotation.
- Lambda expressions.
- Default and static methods.
- Method and constructor references.
- Working with streams.
- Stream pipelines.
- Declarations, descriptors and directives.
- Exports and requires keywords.
- Services and ServiceLoaders.
- Reflection in modules.
- The unnamed module and automatic modules.
Download the course outline
Download the Advanced Java Programming course outline in PDF format.