Craftsmanship training

Logo Extreme Java - Advanced Topics

Extreme Java - Advanced Topics

Learn how to truly master the Java Programming Language

Duration 2 days Get a quote
Official icon Official
Exclusive icon Exclusive
On-site icon On-site
Remote icon Remote
Certifying icon Download the course datasheet

Day 1


Some Java 7 and 8 reminders

Java IO - Serialization and network performance

  • Object flow and serialization mechanism
  • Customize the serialized format
  • Performance optimization
  • Compatibility and scalability of the bitstreams

Java NIO

  • Buffers, Channels and Selectors
  • Direct access to the file system
  • Multiplexing of sockets and non-blocking treatments
  • Encoding character flows

Java memory

  • Structure of memory, generational spaces
  • Measurement of GC activity, impact on performance
  • Frequent problems
  • Optimization of the JVM
  • Finalizers and references
  • Object pools

Day 2

The Reflection API

  • Loading and dynamic manipulation of objects
  • Special cases: tables and parameterized types

Data Structures

  • Concept of spatial and temporal complexity
  • Performance of the algorithms of course and sorting
  • Hashing algorithm
  • Study and comparison of usual data structures

Exception handling

  • Hierarchy and meaning of exception types
  • Analysis and manipulation of Stacktraces
  • Assertions and software quality
  • Pitfalls and good practices
  • Performance considerations

Management of Dates and TimeZones

  • Machine time, human time
  • Dates, calendars and timezones in Java
  • Good practices


  • Issues and good practices
  • Log4J in action
  • Impact on performance