Java Programming

Course overview

Course Summary

Duration: 12 weeks, 84 hours

Project will be written after course completion


Intensive and hands-on, the course emphasizes becoming productive quickly as a Java™ application developer. This course quickly covers the Java language syntax and then moves into the object-oriented features of the language. Students will then learn the I/O streams and collections API packages. This course is current to Java 7 and uses the Eclipse IDE.


Programmers moving to object-oriented programming using Java.


Programming experience in C, C++ or C#® is required. Knowledge of Object-Oriented concepts is required.

Course Outline

Introduction to Java Programming

1. Course Introduction

Course Objectives

Course Overview

Using the Workbook

Suggested References

2. Getting Started with Java

What is Java?

How to Get Java

A First Java Program

Compiling and Interpreting Applications

The JSDK Directory Structure

3. Eclipse

Introduction to Eclipse

Installing Eclipse

Running Eclipse for the First Time

Editors, Views, and Perspectives

Setting up a Project

Creating a New Java Application

Running a Java Application

Debugging a Java Application

Importing Existing Java Code into Eclipse

4. Language Fundamentals

A Java Program

If Statements

Switch Statements

Loop Statements

Syntax Details

Primitive Datatypes


Expressions in Java



Enhanced for Loop

5. Objects and Classes

Defining a Class

Creating an Object

Instance Data and Class Data



Access Modifiers


6. Using Java Objects

Printing to the Console

printf Format Strings

StringBuilder and StringBuffer

Methods and Messages


Parameter Passing

Comparing and Identifying Objects

Destroying Objects

The Primitive-Type Wrapper Classes

Enumerated Types

7. Inheritance in Java


Inheritance in Java


Method Overriding



The Object Class

8. Advanced Inheritance and Generics

Abstract Classes


Using Interfaces




9. Packages


The import Statement

Static Imports

CLASSPATH and Import

Defining Packages

Package Scope

10. Exception Handling

Exceptions Overview

Catching Exceptions

The finally Block

Exception Methods

Declaring Exceptions

Defining and Throwing Exceptions

Errors and RuntimeExceptions

11. Input/Output Streams

Overview of Streams

Bytes vs. Characters

Converting Byte Streams to Character Streams

File Object

Binary Input and Output

PrintWriter Class

Reading and Writing Objects

Closing Streams

12. Core Collection Classes

The Collections Framework

The Set Interface

Set Implementation Classes

The List Interface

List Implementation Classes

The Queue Interface

Queue Implementation Classes

The Map Interface

Map Implementation Classes

13. Appendix A – Collection Sorting and Tuning

Sorting with Comparable

Sorting with Comparator

Sorting Lists and Arrays

Collections Utility Methods

Tuning ArrayList

Tuning HashMap and HashSet

14. Appendix B – Java EE Overview

Introduction to Java EE

Java SE Building Blocks

Web Applications

Web Services

Enterprise JavaBeans

Additional J2EE APIs

POJO, Dependency Injection, and Annotations

The Java EE Platform

15. Appendix C – Eclipse Shortcuts

Shortcut Key Sequences

More Shortcut Key Sequences