What is covered in this Class CJ-200?

  • In this course, you gain extensive experience writing, compiling and executing Java programs.
  • Building robust applications using Java's object-oriented features.
  • You learn to create robust applications using Java class libraries.
  • In this course, you will learn more in-depth concepts and syntax of the Java Programming language.
  • You will learn by examples using the Ellipse IDE, which is supplied as a Learning Sandbox.
  • Completion of this course gives you a basic understanding of Object-Oriented techniques in Java.
  • Students will develop and test Java applications (typically) using Eclipse. 

Introduction to Java Programming

  • The History and Evolution of Java.
  • The Java Virtual Machine.
  • Code Structure in Java
  • Overview of class libraries, Packages
  • Java Varaibles: Primitive & Reference variables
  • Java Methods use Instance & Local Varaibles
  • Control Statements
  • Classes and Objects
  • Enumerations, Autoboxing & Annotation
  • Writing a Simple Java Program
  • Java API Library

The Object Oriented Fundamental Programming Structures in Java

  • Encapsulation, Inheritance and Polymorphism
  • Packages, Interfaces And Abstract Classes.
  • Constructors and Garbage Collection in Java
  • Designing an OO application step by step
  • Java Exception Handling
  • Serialization
  • File Input/Output: java.i.o
  • Multi-Threading in Java
  • Java Collections Framework
  • Java Generics
  • Java Utility Classes
  • Java Deployment - Package & Jars

Data Types, Variables, and Operators

  • Data Types
  • Declaring Variables
  • Variable Scope
  • Casting
  • Operators
  • Automatic Casting



  • Introduction
  • Collection Framework Hierarchy
  • Vectors, Hashtables
  • Enumerations
  • Lists, Sets, Maps
  • The Collections Class

Exceptions: User Defined Checked & RunTime Exceptions


Multi-Threading - Threads

  • Threads vs. Processes
  • Creating Threads by Extending Thread
  • Creating Threads by Implementing Runnable
  • Advantages of Using Threads
  • Daemon Threads
  • Thread States
  • Thread Problems
  • Synchronization

Java's object-oriented features

  • Instantiating objects from classes
  • Aggregation and composition
  • Extending existing classes
  • Overloading and Overriding methods

Core Java Language syntax

  • Declaring and initializing variables
  • Declaring and using arrays
  • Upcasting, downcasting and autoboxing

Flow control

  • Invoking methods and passing parameters
  • Conditionals and loops
  • Handling exceptions with try and catch

Defining classes

  • Fields (instance data)
  • Methods (functions)
  • Abstract classes and interfaces
  • Organizing classes with packages and modifiers
  • Composition vs. inheritance







Does this course use Sun's development tools, the JDK or any IDEs?

This course uses Sun's Java 2 SDK, Standard Edition (J2SE). This course also uses the Eclipse Java IDE.

The concepts you learn in the course will also work in Borland JBuilder, IBM WebSphere Studio and other Java IDE tools.


What systems and software are used with this course?

The normal classroom set-up uses PCs running Windows Server with the latest browsers. However, everything you learn about Java applies equally to UNIX, Macintosh, Windows, OS/2 and other operating systems.


How much time is devoted to each topic?

Content Hours
Introduction 1.0
Object-oriented programming 2.5
Structure of the Java language 3.5
Java classes and interfaces 5.5
Developing GUI applications 6.5
Input and output 3.0

Times, including the workshops, are estimates; exact times may vary according to the needs of each class.