Advanced Java Programming
placeAmsterdam 27 jan. 2026 tot 30 jan. 2026Toon rooster event 27 januari 2026, 09:30-16:30, Amsterdam, Dag 1 event 28 januari 2026, 09:30-16:30, Amsterdam, Dag 2 event 29 januari 2026, 09:30-16:30, Amsterdam, Dag 3 event 30 januari 2026, 09:30-16:30, Amsterdam, Dag 4 |
placeEindhoven 27 jan. 2026 tot 30 jan. 2026Toon rooster event 27 januari 2026, 09:30-16:30, Eindhoven, Dag 1 event 28 januari 2026, 09:30-16:30, Eindhoven, Dag 2 event 29 januari 2026, 09:30-16:30, Eindhoven, Dag 3 event 30 januari 2026, 09:30-16:30, Eindhoven, Dag 4 |
placeHouten 27 jan. 2026 tot 30 jan. 2026Toon rooster event 27 januari 2026, 09:30-16:30, Houten, Dag 1 event 28 januari 2026, 09:30-16:30, Houten, Dag 2 event 29 januari 2026, 09:30-16:30, Houten, Dag 3 event 30 januari 2026, 09:30-16:30, Houten, Dag 4 |
computer Online: Online 27 jan. 2026 tot 30 jan. 2026Toon rooster event 27 januari 2026, 09:30-16:30, Online, Dag 1 event 28 januari 2026, 09:30-16:30, Online, Dag 2 event 29 januari 2026, 09:30-16:30, Online, Dag 3 event 30 januari 2026, 09:30-16:30, Online, Dag 4 |
placeRotterdam 27 jan. 2026 tot 30 jan. 2026Toon rooster event 27 januari 2026, 09:30-16:30, Rotterdam, Dag 1 event 28 januari 2026, 09:30-16:30, Rotterdam, Dag 2 event 29 januari 2026, 09:30-16:30, Rotterdam, Dag 3 event 30 januari 2026, 09:30-16:30, Rotterdam, Dag 4 |
placeZwolle 27 jan. 2026 tot 30 jan. 2026Toon rooster event 27 januari 2026, 09:30-16:30, Zwolle, Dag 1 event 28 januari 2026, 09:30-16:30, Zwolle, Dag 2 event 29 januari 2026, 09:30-16:30, Zwolle, Dag 3 event 30 januari 2026, 09:30-16:30, Zwolle, Dag 4 |
placeAmsterdam 24 mrt. 2026 tot 27 mrt. 2026Toon rooster event 24 maart 2026, 09:30-16:30, Amsterdam, Dag 1 event 25 maart 2026, 09:30-16:30, Amsterdam, Dag 2 event 26 maart 2026, 09:30-16:30, Amsterdam, Dag 3 event 27 maart 2026, 09:30-16:30, Amsterdam, Dag 4 |
placeEindhoven 24 mrt. 2026 tot 27 mrt. 2026Toon rooster event 24 maart 2026, 09:30-16:30, Eindhoven, Dag 1 event 25 maart 2026, 09:30-16:30, Eindhoven, Dag 2 event 26 maart 2026, 09:30-16:30, Eindhoven, Dag 3 event 27 maart 2026, 09:30-16:30, Eindhoven, Dag 4 |
placeHouten 24 mrt. 2026 tot 27 mrt. 2026Toon rooster event 24 maart 2026, 09:30-16:30, Houten, Dag 1 event 25 maart 2026, 09:30-16:30, Houten, Dag 2 event 26 maart 2026, 09:30-16:30, Houten, Dag 3 event 27 maart 2026, 09:30-16:30, Houten, Dag 4 |
computer Online: Online 24 mrt. 2026 tot 27 mrt. 2026Toon rooster event 24 maart 2026, 09:30-16:30, Online, Dag 1 event 25 maart 2026, 09:30-16:30, Online, Dag 2 event 26 maart 2026, 09:30-16:30, Online, Dag 3 event 27 maart 2026, 09:30-16:30, Online, Dag 4 |
placeRotterdam 24 mrt. 2026 tot 27 mrt. 2026Toon rooster event 24 maart 2026, 09:30-16:30, Rotterdam, Dag 1 event 25 maart 2026, 09:30-16:30, Rotterdam, Dag 2 event 26 maart 2026, 09:30-16:30, Rotterdam, Dag 3 event 27 maart 2026, 09:30-16:30, Rotterdam, Dag 4 |
placeZwolle 24 mrt. 2026 tot 27 mrt. 2026Toon rooster event 24 maart 2026, 09:30-16:30, Zwolle, Dag 1 event 25 maart 2026, 09:30-16:30, Zwolle, Dag 2 event 26 maart 2026, 09:30-16:30, Zwolle, Dag 3 event 27 maart 2026, 09:30-16:30, Zwolle, Dag 4 |
placeAmsterdam 26 mei. 2026 tot 29 mei. 2026Toon rooster event 26 mei 2026, 09:30-16:30, Amsterdam, Dag 1 event 27 mei 2026, 09:30-16:30, Amsterdam, Dag 2 event 28 mei 2026, 09:30-16:30, Amsterdam, Dag 3 event 29 mei 2026, 09:30-16:30, Amsterdam, Dag 4 |
placeEindhoven 26 mei. 2026 tot 29 mei. 2026Toon rooster event 26 mei 2026, 09:30-16:30, Eindhoven, Dag 1 event 27 mei 2026, 09:30-16:30, Eindhoven, Dag 2 event 28 mei 2026, 09:30-16:30, Eindhoven, Dag 3 event 29 mei 2026, 09:30-16:30, Eindhoven, Dag 4 |
placeHouten 26 mei. 2026 tot 29 mei. 2026Toon rooster event 26 mei 2026, 09:30-16:30, Houten, Dag 1 event 27 mei 2026, 09:30-16:30, Houten, Dag 2 event 28 mei 2026, 09:30-16:30, Houten, Dag 3 event 29 mei 2026, 09:30-16:30, Houten, Dag 4 |
computer Online: Online 26 mei. 2026 tot 29 mei. 2026Toon rooster event 26 mei 2026, 09:30-16:30, Online, Dag 1 event 27 mei 2026, 09:30-16:30, Online, Dag 2 event 28 mei 2026, 09:30-16:30, Online, Dag 3 event 29 mei 2026, 09:30-16:30, Online, Dag 4 |
placeRotterdam 26 mei. 2026 tot 29 mei. 2026Toon rooster event 26 mei 2026, 09:30-16:30, Rotterdam, Dag 1 event 27 mei 2026, 09:30-16:30, Rotterdam, Dag 2 event 28 mei 2026, 09:30-16:30, Rotterdam, Dag 3 event 29 mei 2026, 09:30-16:30, Rotterdam, Dag 4 |
placeZwolle 26 mei. 2026 tot 29 mei. 2026Toon rooster event 26 mei 2026, 09:30-16:30, Zwolle, Dag 1 event 27 mei 2026, 09:30-16:30, Zwolle, Dag 2 event 28 mei 2026, 09:30-16:30, Zwolle, Dag 3 event 29 mei 2026, 09:30-16:30, Zwolle, Dag 4 |
placeAmsterdam 21 jul. 2026 tot 24 jul. 2026Toon rooster event 21 juli 2026, 09:30-16:30, Amsterdam, Dag 1 event 22 juli 2026, 09:30-16:30, Amsterdam, Dag 2 event 23 juli 2026, 09:30-16:30, Amsterdam, Dag 3 event 24 juli 2026, 09:30-16:30, Amsterdam, Dag 4 |
placeEindhoven 21 jul. 2026 tot 24 jul. 2026Toon rooster event 21 juli 2026, 09:30-16:30, Eindhoven, Dag 1 event 22 juli 2026, 09:30-16:30, Eindhoven, Dag 2 event 23 juli 2026, 09:30-16:30, Eindhoven, Dag 3 event 24 juli 2026, 09:30-16:30, Eindhoven, Dag 4 |
Advanced Classes
In the first place attention is paid to aspects of Advanced Class Design such as the implementation of inheritance and composition, the use of polymorphism, interfaces, inner and anonymous classes and the singleton pattern.
Concurrency
Next multithreaded applications are discussed and the synchronization between threads when accessing shared data. During the treatment of the concurrency package advanced synchronization mechanisms such as cyclic barriers and countdown latches are discussed.
Lambda's
Also the functional language constructs introduced in recent Java versions are discusse…

Er zijn nog geen veelgestelde vragen over dit product. Als je een vraag hebt, neem dan contact op met onze klantenservice.
Advanced Classes
In the first place attention is paid to aspects of Advanced Class Design such as the implementation of inheritance and composition, the use of polymorphism, interfaces, inner and anonymous classes and the singleton pattern.
Concurrency
Next multithreaded applications are discussed and the synchronization between threads when accessing shared data. During the treatment of the concurrency package advanced synchronization mechanisms such as cyclic barriers and countdown latches are discussed.
Lambda's
Also the functional language constructs introduced in recent Java versions are discussed with lambdas and functional interfaces.
Generics
Next generics are on the course program with which classes and methods can be parameterized, strong typing is imposed and the chance of runtime errors is limited. Generics are used a lot in the Collection Framework and the most important container classes in this Framework are discussed.
Stream API
Next attention is paid to the Stream API that enables transformations on data collections to be performed by a combination of successive simpler methods like map and reduce.
Exceptions
The various possibilities for dealing with errors and exceptions are also on the program and attention is paid to file I/O and new I/O when accessing files and directories.
JDBC
Database access with Java Database Connectivity (JDBC) is treated and queries, prepared statements and transactions are part of that.
Reflection
Finally, if time permits, reflection is optionally on the course program, with which compiled Java classes can be analyzed by means of software, and optionally various aspects of enhancing the Java performance are discussed.
Audience Course Advanced Java Programming
The course Advanced Java Programming is intended for experienced Java developers who want to gain more in depth knowledge of Java.
Prerequisites Course Advanced Java Programming
Knowledge of the Java language and syntax and basic experience in Java programming is required to participate in this course.
Realization Training Course Advanced Java Programming
The theory is treated on the basis of presentations and is interspersed with exercises. Demos are used to clarify the theory. The course material is in English. The course times are from 9.30 up and to 16.30.
Certification Course Advanced Java Programming
Participants receive an official certificate Advanced Java Programming after successful completion of the course.
Modules
Module 1 : Advanced Class Design
- Encapsulation and Inheritance
- Implementing Composition
- Polymorphism
- Singleton Patterns
- Abstract Classes
- Final Classes
- Inner Classes
- Static Inner Classes
- Anonymous Inner Classes
- Autonomous Classes
- Enumerated Types
- Implementing hashCode and equals
Module 2 : Multiple Threads
- Java Thread Model
- Extending Thread Class
- Implementing Runnable
- Daemon Threads
- Thread Alive States
- Sleeping and Yielding Control
- Using join and interrupt
- Synchronized Statement
- Locking and Statics
- Deadlock
- Condition Synchronization
- Using wait and notify
Module 3 : Concurrency
- Concurrency Package
- Task Scheduling Framework
- Executor Interface
- ExecutorService
- Callables and Futures
- Synchronizers
- Semaphores and Exchanger
- CountdownLatch and CyclicBarrier
- Concurrent Collections
- Lock Interface
- Reentrant Locks
- Atomic Variables
Module 4 : Lambda's
- Passing Functionality
- Lambda Expressions
- Lambda Variable Access
- Lambda Scoping Rules
- Functional Interfaces
- Predicate Interface
- Consumer Interface
- Supplier Interface
- Function Interface
- UnaryOperator Interface
- BinaryOperator Interface
- Method References
- User Defined Functional Interfaces
Module 5 : Generics
- Type Erasure and Raw Types
- Generics and Subtyping
- Bounded Type Parameters
- Wildcards
- Generics in Collections
- ArrayList and LinkedList
- TreeSet and Hash Set
- HashMap and TreeMap
- Comparable and Comparator
- Collections Streams and Filters
- Iteration using forEach
- Filtering using Lambda's
- Stream Pipeline
Module 6 : Streams
- What are Streams?
- Lazy Evaluation and Parallelization
- forEach, Map and Filter
- findFirst and findAny
- toArray and collect
- Optional Class
- Limiting Stream Size
- allMatch and anyMatch
- Number Specialized Streams
- Parallel and Infinite Streams
- collect Method
- Grouping with Collectors class
- Using flatMap Method
Module 7 : Exception Handling
- Errors and Exceptions
- Checked and Unchecked Exceptions
- Exception Hierarchy
- Multiple Catch Clauses
- finally Clause
- try with Resources
- Auto Closeable Resources
- Common Exceptions
- Throwing Exceptions
- User Defined Exceptions
- Chained Exceptions and Stack Traces
- Assertions
Module 8 : Java IO and NIO
- Standard I/O Streams
- Reading and Writing Files
- Buffered Streams
- Data Conversion Streams
- Serialization
- Object Streams
- NIO and Asynchronous I/O Processing
- IO Channels
- Stream API with NIO.2
- Using Path Class
- Directory Traversing
- PathMatcher class
Module 9 : Database Access
- JDBC Architecture
- JDBC Drivers and URL's
- Database Connections
- Executing Statements
- Retrieving Results
- Handling Errors
- Prepared Statements
- Database Metadata
- Transactions
- Commit and Rollback
- Rowset Interfaces
- Using RowsetProvider
Module 10 : Localization
- LocalDate Class
- LocalTime and LocalDateTime
- Instant and Period
- Duration and TemporalUnit
- Defining Properties
- Reading Property Files
- Creating Resource Bundles
- Formatting Date and Times
- Locale Class
- Localizing Dates
- Localizing Numbers
- Localizing Currencies
Optional Module 11 : Reflection
- What is Reflection?
- Reflection Classes
- Class Loading
- The Class Class
- Creating Objects
- Reflection Methods in Class
- Field Class
- Constructor Class
- Method Class
- AccessibleObject Class
- Dynamic Proxies
- Invocation Handler
Optional Module 12 : Performance
- Influences on Performance
- JIT Compilation and Hotspot JVM
- Garbage Collection
- String Types
- Buffered and New I/O
- Synchronization and Concurrency
- Primitives versus Wrappers
- Collections
- Exception Handling
- Serialization
- Native methods
- Lazy Loading and Object Reuse
Waarom SpiralTrain
SpiralTrain is specialist op het gebied van software development trainingen. Wie bieden zowel trainingen aan voor beginnende programmeurs die zich de basis van talen en tools eigen willen maken als ook trainingen voor ervaren software professionals die zich willen bekwamen in de nieuwste versie van een taal of een framework.
Onze trainingkenmerken zich door :
• Klassikale of online open roostertrainingen en andere
trainingsvormen
• Eenduidige en scherpe cursusprijzen, zonder extra kosten
• Veel trainingen met een doorlopende case study
• Trainingen die gericht zijn op certificering
Er zijn nog geen veelgestelde vragen over dit product. Als je een vraag hebt, neem dan contact op met onze klantenservice.

