Overview
The Advanced Java topics outline contains details of the more advanced modules in Java. Since the number of JAVA topics is large, and not necessarily related our training coordinates the ability to mix and match topics of interest for students.
Audience
Java programmers
Length
24 hours
Outline
What you may have missed in your Java Basics course
- Passing parameters
- Using wrapper classes
- Implementing interfaces: type versus class
- Using the final modifier
- Try/catch with resources (Java 7)
Java Generics
- Brief review of the basics
- Covariance, contravariance and invariance
- Using bounded and unbounded wildcards
- Coding genderic methods
- Type erasure
Java Collections
- Brief review of the basics
- Collectons and generics
- Unmodifiable and immutable collections
- Synchronized collections
- Concurrent collections
Java Reflection
- Why use reflection?
- Discovering information about classes
- Discovering infformation about methods and fields
- Discovering information about arrays and enumerated types
- Comparision operators
Java File I/O
- Brief review of the basics
- Using NIO ad NIO2
- Object serialization/deserialization
Concurrent processing
- Processes and threads
- Thread objects
- Thread synchronization
- High level concurrency using executors
Java performance issues
- Profile first, optimize later
- Using jvisualvm to profile your code
- Choose the correct collection
- A ‘laundry list’ of performance hints
Coding some GoF patterns
- The GoF patterns in brief
- The Factory/Abstract factory patterns
- The Facade pattern
- The Decorator pattern
- The Adapter pattern
- The Command pattern