Webucator's XSLT and FO classes far exceeded my expectations. Even though the classes were done on t... More Testimonials »

Advanced Java Programming

Delivery Options

Class Description

Class Overview

This course provides advanced training in developing software using the Java Platform, Standard Edition, or Java SE. It is intended for students with solid experience in structured and object-oriented Java programming, including use of the Collections API and exception handling.

The course covers several general-purpose topics: using and building generic types, writing multi-threaded applications, the Reflection API and annotations, and network programming using sockets. It combines nicely with various other courses in the Java curriculum, each of which is also "advanced Java" of some sort: JDBC, secure coding, Swing GUI programming, design patterns, and so on.

Class Goals

  • Make effective use of Java generic types.
  • Write multi-threaded Java applications.
  • Use the Reflection API for highly generic tasks, discovery, or code-generation.
  • Use standard annotations and develop custom annotations to express meta-data in Java source files.
  • Communicate between processes using network sockets.

Class Outline

  1. Generics
    1. Using Generics
    2. Type Erasure
    3. Type Boundaries
    4. Wildcards
    5. Generic Methods
    6. Strengths and Weaknesses of Generics
    7. Legacy Code and Generics
  2. Threads
    1. Java Thread Model
    2. Creating and Running Threads
    3. Manipulating Thread State
    4. Thread Synchronization
    5. Volatile Fields vs. Synchronized Methods
    6. wait and notify
    7. join and sleep
    8. The Concurrency API
    9. Atomic Operations
  3. Reflection
    1. Uses for Meta-Data
    2. The Reflection API
    3. The Class<T> Class
    4. The java.lang.reflect Package
    5. Reading Type Information
    6. Navigating Inheritance Trees
    7. Dynamic Instantiation
    8. Dynamic Invocation
    9. Reflecting on Generics
  4. Annotations
    1. Aspect-Oriented Programming and Java
    2. The Annotations Model
    3. Annotation Types and Annotations
    4. Built-In Annotations
    5. Annotations vs. Descriptors (XML)
  5. Sockets
    1. The OSI Reference Model
    2. Network Protocols
    3. The Socket Class
    4. The ServerSocket Class
    5. Connecting Through URL Objects
    6. HTTP and Other TCP Servers
    7. Datagram Clients and Servers
    8. Non-Blocking Sockets

Class Materials

All students receive a course manual or book and all the class examples.

Students in private onsite classes will also receive:

Class Prerequisites

Experience in the following areas is required:

  • Solid Java programming experience is essential

Technical Requirements

Our computer technical requirements and setup process is easy, with support just a click away.


  • Java ®, all Java-based marks, Hibernate ®, and all Hibernate-based marks are trademarks or registered trademarks of Sun Microsystems, Inc. or its subsidiaries in the U.S. and other countries.
Client Success
  1. Independent Survey
  2. Client List
  3. Testimonials
Join The Team
  1. Learn how you can become a Webucator Trainer
  2. Career Opportunities
Training Classes
Locations
Live eLearning

Like a class you would go to, but you don't have to go anywhere. More...

Customized Onsite Training

The trainer comes to you and delivers a class customized for your team. More...

Self-Paced eLearning

Our least expensive option. You proceed through the course entirely at your own pace. More...

Reference Library
Partner Programs
© Webucator, Inc. All rights reserved. | Toll Free: 877-932-8228 | UK: 0808-101-3484 | From outside the USA: 315-849-2724| Fax: 315-849-2723