Advanced Java
A
Part of the Java: Under the Hood™
Series
Audience: Our 4-day Advanced
Java course is for programmers who have a good working knowledge
of the Java programming language. This course is intended to follow
the Java for Programmers
or Java for C++ Programmers
course.
Course Length: 4 days
Advanced Java covers popular
Java programming concepts that are beyond the scope of the introductory
courses. Topics discussed include object serialization, an important
feature of other Java technologies like RMI and Enterprise JavaBeans.
We also discuss creating TCP/IP sockets, the Java Reflection API,
inner classes, and a detailed discussion on Java threads and how
to use the built-in thread synchronization features of the Java
language.
The course then advances to some
of the most popular APIs in the Java language: Remote Method Invocation
(RMI), Java Database Connectivity (JDBC), the Java Native Interface
(JNI), and JavaBeans, a specification for developing Java software
components.
Course Outline (download
pdf version)
Advanced Java Topics
- Object Serialization:
Object persistence.
- Sockets:
Creating TCP/IP connections.
- The Reflection API:
Determining the features of a class.
- Inner Classes:
Classes defined within a class or method.
Threads
- Processes vs. Threads:
Understanding what a thread is.
- Thread Scheduling:
The lifecycle of a thread.
- Creating a Thread:
The Thread class and the Runnable interface.
- Synchronization:
Making your Java classes thread-safe.
- The Object Monitor:
Using the wait() and notify() methods.
Remote Method Invocation
- Overview of RMI:
Understanding how RMI works.
- The RMI Registry:
Stores remote references.
- The Remote Interface:
Tagging interface for remote objects.
- Implementing RMI:
The steps involved in implementing RMI.
- Callbacks: Passing
a remote reference.
- Activatable Objects:
Instantiating remote objects on demand.
- The Activatable Class:
For use with activation.
- The Setup Class:
Registering the remote interface with rmid.
- Implementing Activation:
The steps involved in using rmid.
JavaBeans
- Overview of JavaBeans:
Java software components.
- The Bean Development Kit:
The bean specification
and Sun’s beanbox.
- Properties: Adding
properties to a bean.
- Methods:
A bean’s behavior.
- Events: How
beans communicate with each other.
Java Native Interface
- Overview of JNI:
Interface to native code.
- Using JNI:
The steps involved in using JNI.
- "Hello, JNI":
Your first JNI application.
- JNI Data Types:
How the Java data types map to JNI’s
data types.
- The Methods of JNI:
A reference for the JNI methods.
- Fields, Methods and Constructors:
Accessing members of Java objects from native code.
JDBC
- Overview of JDBC:
An API for communicating with databases.
- JDBC Drivers:
Understanding the various types
of drivers available for JDBC.
- Connecting to a Database:
Loading the appropriate
driver and making the connection.
- Statements: Executing
SQL statements.
- Prepared Statements:
Executing precompiled SQL statements.
- Results: Working
with result sets.
|