Course Overview

Java 8 and OO Essentials is a five-day, comprehensive hands-on Java course geared for developers who have little or no prior working knowledge of object-oriented programming languages (such as those working on (C, COBOL, 4GL, etc.)  Throughout the course students learn the best practices for writing great object-oriented programs in Java 8, using sound development techniques, new improved features for better performance, and new capabilities for addressing rapid application development. Special emphasis is placed on object oriented concepts and best practices.

Note: In order to provide the broadest range of courses and class dates for this class, this course may be taught by either Wintellect or one of our training Partners.

Key Learning Areas

  • Understand what OO programming is and what the advantages of OO are in today's world
  • Work with objects, classes, and OO implementations
  • Understand the basic concepts of OO such as encapsulation, inheritance, polymorphism, and abstraction
  • Understand not only the fundamentals of the Java language, but also its importance, uses, strengths and weaknesses
  • Understand the basics of the Java language and how it relates to OO programming and the Object Model
  • Learn to use Java exception handling and logging features
  • Understand and use classes, inheritance and polymorphism
  • Understand and use collections, generics, autoboxing, and enumerations
  • Use the JDBC API for database access
  • Use Java for networking and communication applications
  • Work with annotations
  • Take advantage of the Java tooling that is available with the programming environment being used in the class

Specific Java 8 features that are covered in the course include:

  • The new Date/Time API
  • Static and Default methods
  • The StringJoiner class
  • The Optional class
  • Lambda Expressions
  • The Stream API

Course Outline

Java 8: A First Look

  • The Java™ Platform
  • Using the JDK
  • The Eclipse Paradigm

OO Concepts

  • Object-Oriented Programming
  • Inheritance, Abstraction, and Polymorphism

Getting started with Java™

  • Writing a Simple Class
  • Adding Methods to the Class
  • Language Statements
  • Using Strings
  • Specializing in a Subclass

Essential Java™ Programming

  • Fields and Variables
  • Using Arrays
  • Java™ Packages and Visibility

Advanced Java™ Programming

  • Inheritance and Polymorphism
  • Interfaces and Abstract Classes
  • Exceptions

Java™ Developer’s Toolbox

  • Utility Classes
  • Generics
  • Collections

Java™ Lambda and Streams

  • Introduction to Lambda
  • Expressions
  • Streams
  • Collections, Lambda and Streams

Java™ Application Development

  • Introduction to Annotations
  • JDBC

Who Benefits

Students who attend Java 8 and OO Essentials will leave this course armed with the required skills to develop solid object-oriented applications written in Java, using sound coding techniques and best coding practices. Geared for developers with prior development experience in languages such as COBOL, PowerBuilder, Visual Basic or other mainframe or 4GL/non-OO languages, this course will teach students everything they need to become productive in essential Java programming.  Special emphasis is placed on object-oriented concepts and practices throughout the entire course.


This is an introductory-level course, designed for experienced developers who wish to get up and running with Java, or who need to reinforce sound object oriented Java coding practices.