Get in Touch

Course Outline

Generics

  • Rationale, timing, and cost-benefit analysis of Generics
  • Type Erasure
  • Type Boundaries
  • Wildcards
  • Generic Methods

Multithreading

  • Overview of the Java Thread System
  • Managing Threads
  • Interacting with Threads and Thread States
  • Thread Synchronization
  • Volatile Fields and Synchronized Methods
  • The wait and notify pattern
  • The join and sleep pattern
  • Concurrency API
  • Atomic Operations
  • Thread Pools

Reflection

  • Appropriate use cases and pitfalls of reflection
  • Applications for Metadata
  • The Reflection API
  • The Class and Class constructs
  • The java.lang.reflect Package
  • Reading Type Information
  • Navigating Inheritance Trees
  • Dynamic Instantiation
  • Dynamic Invocation
  • Reflecting on Generics
  • Accessing private fields using reflection

Annotations

  • Aspect-Oriented Programming (AOP)
  • Built-In Annotations
  • The Annotations Model
  • Annotation Types and Usage
  • 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
  • Multithreading in Servers

Requirements

Participants should possess a solid understanding of Java and Object-Oriented Programming (OOP) concepts, including interfaces, inheritance, polymorphism, generics, collections, recursive methods, as well as the practical use of annotations and varargs.

 7 Hours

Number of participants


Price per participant

Testimonials (3)

Upcoming Courses

Related Categories