Java Training

Get training from experts

Contact Us

Java Fundamentals Training

Target Audience and Prerequisites

Our Java Fundamentals training course is designed for individuals new to programming or those with basic programming experience who seek to learn the principles of application design and object-oriented programming using Java. No prior programming knowledge is necessary. This course caters to a diverse audience by offering flexible learning options including self-paced study, mentored support, and instructor-led training.

Affordable Training

We offer self-paced, mentored or
Instructor-led, remote or in-person courses
Allow our experts to guide you in mastering Java.

Get a Quote

Curriculum and Course Content

Utilizing the latest stable release of Java, our course is continually updated to reflect current syntax and best practices. Beyond teaching the basics of the Java language, students will gain a comprehensive understanding of source code versus compiled code, debugging techniques, the build and packaging process, and effective project organization. Additionally, students will learn how to leverage an Integrated Development Environment (IDE) for increased productivity and adherence to best practices.

Flexible, Affordable Learning Options

Why choose our course? Our training stands out by offering a structured yet flexible approach to mastering Java. Whether you prefer to learn at your own pace, with guidance from experienced mentors, or through interactive instructor-led sessions, we provide the support you need to succeed. Our curriculum is designed by industry experts to ensure you acquire the skills that are most relevant and in-demand. By the end of this course, you will be well-equipped to tackle real-world Java programming challenges and advance your career in software development.


Java Fundamentals Course Outline

Course Introduction

  • Course Objectives
  • Course Overview
  • Using the Workbook
  • Suggested References

Getting Started with Java

  • Java History
  • Installing Java
  • A First Java Program
  • Compiling and Interpreting Applications
  • Java IDE Overview and Use

Datatypes and Variables

  • Primitive Datatypes
  • Declarations
  • Variable Names
  • Numeric Literals
  • Character Literals
  • String
  • String Literals
  • Arrays
  • Non-Primitive Datatypes
  • The Dot Operator

Operators and Expressions

  • Expressions
  • Assignment Operator
  • Arithmetic Operators
  • Relational Operators
  • Logical Operators
  • Increment and Decrement Operators
  • Operate-Assign Operators (+=, etc.)
  • The Conditional Operator
  • Operator Precedence
  • Implicit Type Conversions
  • The Cast Operator

Control Flow

  • Statements
  • Conditional (if) Statements
  • Adding an else if
  • Conditional (switch) Statements
  • while and do-while Loops
  • for Loops
  • A for Loop Diagram
  • Enhanced for Loop
  • The continue Statement
  • The break Statement


  • Methods
  • Calling Methods
  • Defining Methods
  • Method Parameters
  • Static Methods

Object-Oriented Programming

  • Introduction to Object-Oriented
  • Programming
  • Classes and Objects
  • Fields and Methods
  • Encapsulation
  • Access Control
  • Inheritance
  • Polymorphism

Objects and Classes

  • Defining a Class
  • Creating an Object
  • Instance Data and Class Data
  • Methods
  • Constructors
  • Access Modifiers
  • Encapsulation

Using Java Objects

  • Printing to the Console
  • printf Format Strings
  • StringBuilder and StringBuffer
  • Methods and Messages
  • toString
  • Parameter Passing
  • Comparing and Identifying Objects
  • Destroying Objects
  • The Primitive-Type Wrapper Classes
  • Enumerated Types

Inheritance in Java

  • Inheritance
  • Inheritance in Java
  • Casting
  • Method Overriding
  • Polymorphism
  • super
  • The Object Class

Advanced Inheritance and Generics

  • Abstract Classes
  • Interfaces
  • Using Interfaces
  • Collections
  • Generics
  • Comparable
  • Packages
  • The import Statement
  • Static Imports
  • CLASSPATH and Import
  • Defining Packages
  • Package Scope

Exception Handling

  • Exceptions Overview
  • Catching Exceptions
  • The finally Block
  • Exception Methods
  • Declaring Exceptions
  • Defining and Throwing Exceptions
  • Errors and RuntimeExceptions

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

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

Collection Sorting

  • Sorting with Comparable
  • Sorting with Comparator
  • Sorting Lists and Arrays
  • Collections Utility Methods

Modern Java Features

  • var Keyword for Local Variable Type Inference (Java 10)
  • Switch Expressions (Java 12)
  • Text Blocks (Java 13)
  • Records (Java 14)
  • Sealed Classes (Java 15)

Contact Us

Please contact us for any queries via phone or our contact form. We will be happy to answer your questions.

3 Appian Place,373 Kent Ave
2194 South Africa
Tel: +2711-781 8014 (Johannesburg)
  +2721-020-0111 (Cape Town)

Contact Form


Contact Form