Get in Touch

Course Outline

Generics

  • Rationale, application, and benefit/cost analysis of Generics
  • Type Erasure
  • Type Boundaries
  • Wildcards
  • Generic Methods

Multithreading

  • Java Thread System
  • Thread Management
  • Interacting with Threads and Thread State
  • Thread Synchronization
  • Volatile Fields and Synchronized Methods
  • wait and notify patterns
  • join and sleep patterns
  • Concurrency API
  • Atomic Operations
  • Thread Pools

Reflection

  • When to use and avoid reflection
  • Applications for Meta-Data
  • The Reflection API
  • The Class and java.lang.reflect
  • The java.lang.reflect Package
  • Reading Type Information
  • Navigating Inheritance Trees
  • Dynamic Instantiation
  • Dynamic Invocation
  • Reflecting on Generics
  • Accessing private fields via reflection

Annotations

  • Aspect-Oriented Programming (AOP)
  • Built-In Annotations
  • Annotations Model
  • Annotation Types and Annotations
  • Annotations vs. Descriptors (XML)

Multi-Process Communication

  • Shared Memory
  • Sockets
  • Non-Blocking Sockets
  • TCP
  • URL Objects
  • HTTP and Other TCP Servers
  • Datagram Clients and Servers
  • Multi-Threading in Servers

Requirements

A solid understanding of Java and Object-Oriented Programming (OOP) principles is required, including proficiency with interfaces, inheritance, polymorphism, generics, collections, recursive methods, as well as the use of annotations and varargs.

 7 Hours

Testimonials (3)

Related Categories