Course Description

Java is one of the most important programming languages used today, and its correct usage is a critical part of many systems being written now.  The basics of the language are relatively easy, but the challenge lies in learning how to use it well.  This is especially true regarding the Object-Oriented nature of Java, which for many developers is a new way of approaching system design and construction.

This course covers the core OO and Java concepts that developers need to use the Java programming language to create well designed Java programs. It focuses on key OO capabilities and how to use them in Java. This includes material on creating well designed Java classes, using encapsulation, building more complex functionality with composition, and using inheritance to share functionality and create specialized types.

This course is suitable for environments using either Java 5, Java 6, Java 7, or Java 8. The material includes coverage of all current Java capabilities that are within the scope of the material, including Java capabilities such as strings in switch statements, and Multi-catch. It also stresses the use of good coding practices for all the examples and labs. All labs are doable in any of the supported Java environments. All labs are done with the Eclipse IDE. Other IDE’s are available on request.

This course draws on our extensive experience to provide a solid understanding of the concepts and practices needed to write good object oriented programs in Java.  Be prepared to work hard and learn a great deal! This course can be followed by our Intermediate Java course. The course can be held on-site & customized to fit your needs.

All labs can be done with the Eclipse IDE or a simple text editor.

Course Outline

Getting Started with Java

  • An introduction to Java
  • Toolkits and platforms
  • How Java compares to C++ and C#
  • Applications, applets, and servlets
  • How Java compiles and interprets code
  • How to open, close, delete, compile and run a project

Basic Java coding skills

  • How to code statements, comments, and identifiers
  • Assignment and arithmetic expressions using numeric variables
  • Working with a String object
  • Importing Java classes, creating objects, and calling methods
  • How to use the API documentation to research Java classes
  • How to test and debug an application

Working with data

  • The eight primitive data types and casting
  •  Working with variables and constants
  • How to use the shortcut assignment operators
  • Using Java classes when working with various data types
    • NumberFormat class
    • Math class
    • Integer and Double classes
  • Understanding constructors and methods
  • How to use BigDecimal arithmetic

Coding control statements

  • Comparing primitive datatypes and strings
  • Coding else/if and switch statements
  • How to code while and do-while loops
  • Coding nested loops
  • The break and continue statements
  • Static methods

Exception handling

  • Understanding exception classes
  • Catching exceptions properly
  • Validating data
  • Preventing exceptions from being thrown
  • Using generic methods to validate an entry

Testing and debugging an application

  • Basic skills necessary for testing and debugging
  • How to set and remove breakpoints
  • Stepping through the code
  • Inspecting variables and the stack trace

Defining and using classes

  • How classes can be used to structure an application
  • How encapsulation works
  • The relationship between a class and its objects
  • Coding a class
    • Instance variables
    • Constructors
    • Methods
  • Overloading methods
  • Coding static fields and method


  • Understanding the basics of inheritance
  • Superclass and subclass
  • How polymorphism works
  • Getting information about an object’s type
  • How to cast objects and compare objects
  • Using the abstract and final keywords


  • Understanding simple interface
  • Interfaces compared to abstract classes
  • How to inherit a class and implement an interface


  • How to create an array
  • Assigning values to the elements of an array
  • How to use for loops with arrays
  • Understanding the methods of the Array class

Java Collections

  • Comparing of arrays and collections
  • Generics
  • How to use the ArrayList class
  • How to use the LinkedList class


There are no prerequisites for this course, but prior programming experience is recommended. Introduction to Java Programming is geared to audiences with no background in Java and limited OO Programming experience. It uses a steady pace and numerous hands-on labs to provide an easy entry into the world of Java and Java OO Programming.


18 Hours | 3 Days or 6 Nights


Thank you for your interest in this course. Unfortunately, the course you have selected is currently not open for enrollment. Please complete a Course Inquiry or call 314-977-3226 so that we may promptly notify you when enrollment opens.

Required fields are indicated by .
*Academic Unit eligibility to be determined by college/university in which you are enrolled in a degree seeking program.