Cursus Advanced Java Programmeren
Startdata en plaatsen
placeAmsterdam 27 mei. 2025 tot 30 mei. 2025Toon rooster event 27 mei 2025, 09:30-16:30, Amsterdam, Dag 1 event 28 mei 2025, 09:30-16:30, Amsterdam, Dag 2 event 29 mei 2025, 09:30-16:30, Amsterdam, Dag 3 event 30 mei 2025, 09:30-16:30, Amsterdam, Dag 4 |
placeEindhoven 27 mei. 2025 tot 30 mei. 2025Toon rooster event 27 mei 2025, 09:30-16:30, Eindhoven, Dag 1 event 28 mei 2025, 09:30-16:30, Eindhoven, Dag 2 event 29 mei 2025, 09:30-16:30, Eindhoven, Dag 3 event 30 mei 2025, 09:30-16:30, Eindhoven, Dag 4 |
placeHouten 27 mei. 2025 tot 30 mei. 2025Toon rooster event 27 mei 2025, 09:30-16:30, Houten, Dag 1 event 28 mei 2025, 09:30-16:30, Houten, Dag 2 event 29 mei 2025, 09:30-16:30, Houten, Dag 3 event 30 mei 2025, 09:30-16:30, Houten, Dag 4 |
computer Online: Online 27 mei. 2025 tot 30 mei. 2025Toon rooster event 27 mei 2025, 09:30-16:30, Online, Dag 1 event 28 mei 2025, 09:30-16:30, Online, Dag 2 event 29 mei 2025, 09:30-16:30, Online, Dag 3 event 30 mei 2025, 09:30-16:30, Online, Dag 4 |
placeRotterdam 27 mei. 2025 tot 30 mei. 2025Toon rooster event 27 mei 2025, 09:30-16:30, Rotterdam, Dag 1 event 28 mei 2025, 09:30-16:30, Rotterdam, Dag 2 event 29 mei 2025, 09:30-16:30, Rotterdam, Dag 3 event 30 mei 2025, 09:30-16:30, Rotterdam, Dag 4 |
placeZwolle 27 mei. 2025 tot 30 mei. 2025Toon rooster event 27 mei 2025, 09:30-16:30, Zwolle, Dag 1 event 28 mei 2025, 09:30-16:30, Zwolle, Dag 2 event 29 mei 2025, 09:30-16:30, Zwolle, Dag 3 event 30 mei 2025, 09:30-16:30, Zwolle, Dag 4 |
placeAmsterdam 22 jul. 2025 tot 25 jul. 2025Toon rooster event 22 juli 2025, 09:30-16:30, Amsterdam, Dag 1 event 23 juli 2025, 09:30-16:30, Amsterdam, Dag 2 event 24 juli 2025, 09:30-16:30, Amsterdam, Dag 3 event 25 juli 2025, 09:30-16:30, Amsterdam, Dag 4 |
placeEindhoven 22 jul. 2025 tot 25 jul. 2025Toon rooster event 22 juli 2025, 09:30-16:30, Eindhoven, Dag 1 event 23 juli 2025, 09:30-16:30, Eindhoven, Dag 2 event 24 juli 2025, 09:30-16:30, Eindhoven, Dag 3 event 25 juli 2025, 09:30-16:30, Eindhoven, Dag 4 |
placeHouten 22 jul. 2025 tot 25 jul. 2025Toon rooster event 22 juli 2025, 09:30-16:30, Houten, Dag 1 event 23 juli 2025, 09:30-16:30, Houten, Dag 2 event 24 juli 2025, 09:30-16:30, Houten, Dag 3 event 25 juli 2025, 09:30-16:30, Houten, Dag 4 |
computer Online: Online 22 jul. 2025 tot 25 jul. 2025Toon rooster event 22 juli 2025, 09:30-16:30, Online, Dag 1 event 23 juli 2025, 09:30-16:30, Online, Dag 2 event 24 juli 2025, 09:30-16:30, Online, Dag 3 event 25 juli 2025, 09:30-16:30, Online, Dag 4 |
placeRotterdam 22 jul. 2025 tot 25 jul. 2025Toon rooster event 22 juli 2025, 09:30-16:30, Rotterdam, Dag 1 event 23 juli 2025, 09:30-16:30, Rotterdam, Dag 2 event 24 juli 2025, 09:30-16:30, Rotterdam, Dag 3 event 25 juli 2025, 09:30-16:30, Rotterdam, Dag 4 |
placeZwolle 22 jul. 2025 tot 25 jul. 2025Toon rooster event 22 juli 2025, 09:30-16:30, Zwolle, Dag 1 event 23 juli 2025, 09:30-16:30, Zwolle, Dag 2 event 24 juli 2025, 09:30-16:30, Zwolle, Dag 3 event 25 juli 2025, 09:30-16:30, Zwolle, Dag 4 |
placeAmsterdam 23 sep. 2025 tot 26 sep. 2025Toon rooster event 23 september 2025, 09:30-16:30, Amsterdam, Dag 1 event 24 september 2025, 09:30-16:30, Amsterdam, Dag 2 event 25 september 2025, 09:30-16:30, Amsterdam, Dag 3 event 26 september 2025, 09:30-16:30, Amsterdam, Dag 4 |
placeEindhoven 23 sep. 2025 tot 26 sep. 2025Toon rooster event 23 september 2025, 09:30-16:30, Eindhoven, Dag 1 event 24 september 2025, 09:30-16:30, Eindhoven, Dag 2 event 25 september 2025, 09:30-16:30, Eindhoven, Dag 3 event 26 september 2025, 09:30-16:30, Eindhoven, Dag 4 |
placeHouten 23 sep. 2025 tot 26 sep. 2025Toon rooster event 23 september 2025, 09:30-16:30, Houten, Dag 1 event 24 september 2025, 09:30-16:30, Houten, Dag 2 event 25 september 2025, 09:30-16:30, Houten, Dag 3 event 26 september 2025, 09:30-16:30, Houten, Dag 4 |
computer Online: Online 23 sep. 2025 tot 26 sep. 2025Toon rooster event 23 september 2025, 09:30-16:30, Online, Dag 1 event 24 september 2025, 09:30-16:30, Online, Dag 2 event 25 september 2025, 09:30-16:30, Online, Dag 3 event 26 september 2025, 09:30-16:30, Online, Dag 4 |
placeRotterdam 23 sep. 2025 tot 26 sep. 2025Toon rooster event 23 september 2025, 09:30-16:30, Rotterdam, Dag 1 event 24 september 2025, 09:30-16:30, Rotterdam, Dag 2 event 25 september 2025, 09:30-16:30, Rotterdam, Dag 3 event 26 september 2025, 09:30-16:30, Rotterdam, Dag 4 |
placeZwolle 23 sep. 2025 tot 26 sep. 2025Toon rooster event 23 september 2025, 09:30-16:30, Zwolle, Dag 1 event 24 september 2025, 09:30-16:30, Zwolle, Dag 2 event 25 september 2025, 09:30-16:30, Zwolle, Dag 3 event 26 september 2025, 09:30-16:30, Zwolle, Dag 4 |
placeAmsterdam 25 nov. 2025 tot 28 nov. 2025Toon rooster event 25 november 2025, 09:30-16:30, Amsterdam, Dag 1 event 26 november 2025, 09:30-16:30, Amsterdam, Dag 2 event 27 november 2025, 09:30-16:30, Amsterdam, Dag 3 event 28 november 2025, 09:30-16:30, Amsterdam, Dag 4 |
placeEindhoven 25 nov. 2025 tot 28 nov. 2025Toon rooster event 25 november 2025, 09:30-16:30, Eindhoven, Dag 1 event 26 november 2025, 09:30-16:30, Eindhoven, Dag 2 event 27 november 2025, 09:30-16:30, Eindhoven, Dag 3 event 28 november 2025, 09:30-16:30, Eindhoven, Dag 4 |
Beschrijving
In de cursus Advanced Java Programmeren komen een reeks geavanceerde aspecten van Java aan de orde.Advanced Classes
Allereerst wordt aandacht besteed aan aspecten van Advanced Class Design zoals het implementeren van inheritance en composition, het gebruik van polymorfisme, interfaces, inner en anonymous classes en het singleton pattern.
Concurrency
Vervolgens wordt ingegaan op multithreaded applicaties en de synchronisatie tussen threads bij het benaderen van shared data. Bij de bespreking van het concurrency package komen daarbij geavanceerde synchronisatie mechanismes zoals cyclic barriers en countdown latches aan de orde.
Lambda's
Ook de in recente Java versies geïntroduceerde functione…

Veelgestelde vragen
Er zijn nog geen veelgestelde vragen over dit product. Als je een vraag hebt, neem dan contact op met onze klantenservice.
Advanced Classes
Allereerst wordt aandacht besteed aan aspecten van Advanced Class Design zoals het implementeren van inheritance en composition, het gebruik van polymorfisme, interfaces, inner en anonymous classes en het singleton pattern.
Concurrency
Vervolgens wordt ingegaan op multithreaded applicaties en de synchronisatie tussen threads bij het benaderen van shared data. Bij de bespreking van het concurrency package komen daarbij geavanceerde synchronisatie mechanismes zoals cyclic barriers en countdown latches aan de orde.
Lambda's
Ook de in recente Java versies geïntroduceerde functionele taal constructies komen aan bod bij de behandeling van lambda's en functional interfaces.
Generics
Vervolgens worden generics besproken waarmee classes en methods kunnen worden geparametriseerd, strong typing wordt opgelegd en de kans op runtime errors wordt beperkt. Generics worden meestal gebruikt in het Collection Framework en de belangrijkste container classes daaruit worden besproken.
Stream API
Vervolgens is er aandacht voor de Stream API waarmee transformaties op data collections kunnen worden uitgevoerd door een combinatie van elkaar opvolgende simpelere methoden waaronder map en reduce.
Exceptions
Ook de diverse mogelijkheden bij de afhandeling van errors en exceptions staat op het programma en er wordt aandacht besteed aan file I/O en new I/O bij het benaderen van files an directories.
JDBC
Ook wordt database access met Java Database Connectivity (JDBC) behandeld waarbij queries, prepared statements en transactions aan de orde worden gesteld.
Reflection
Tenslotte staat optioneel, als de tijd het toelaat, reflection
op het programma, waarmee gecompileerde Java classes softwarematig
kunnen worden geanalyseerd, en komen optioneel diverse aspecten het
verbeteren van de Java performance aan bod.
Doelgroep Cursus Advanced Java Programmeren
De cursus Advanced Java Programmeren is bestemd voor ervaren Java developers die diepgaandere kennis van Java willen opdoen.
Voorkennis Cursus Advanced Java Programmeren
Om aan deze cursus te kunnen deelnemen is kennis van Java en ervaring met programmeren in Java vereist.
Uitvoering Training Advanced Java Programmeren
De theorie wordt behandeld aan de hand van presentaties en wordt afgewisseld met oefeningen. Demo's dienen ter verheldering van de theorie. De cursustijden zijn van 9.30 tot 16.30.
Officieel Certificaat Cursus Advanced Java Programmeren
De deelnemers krijgen na het goed doorlopen van de cursus een officieel certificaat Advanced Java Programmeren.
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
Blijf op de hoogte van nieuwe ervaringen
Deel je ervaring
Heb je ervaring met deze cursus? Deel je ervaring en help anderen kiezen. Als dank voor de moeite doneert Springest € 1,- aan Stichting Edukans.Er zijn nog geen veelgestelde vragen over dit product. Als je een vraag hebt, neem dan contact op met onze klantenservice.