Java SE8 Fundamentals – JA-FUND

Java SE 8 Fundamentals

Course Code: JA-FUND

This five-day course in Java SE 8 Fundamentals introduces and teaches you the concepts of object-orientation and the tenets of programming using the Java language. You will be taught, inter-alia core real-world programming principles and through many practical examples build coding skills to thrust you into a career in software development. With your newly attained knowledge you will have a solid foundation from which you may undertake continued skills and training in software development.


This module details all the topics covered throughout the duration of the course:

– Course objectives

– Course schedule

– Course environment

This module describes the Java landscape and discusses;

– Why use Java?

– Java and the Internet 

– Security

– Portability of your code

– Java’s bytecode

– Java on the server side

In this module you are introduced to the world of object-orientation. In this module you will:

– Learn about the principles of Object orientation. 

– Model your objects by learning basic UML


– Answer quiz.

– Design a digital clock.

– Design an amplifier.

In this module you will get yourself ready for programming and will;

– Set up your Java environment

– Get to know about Java classes

– Understand the main() method

– Write your first Java program

– Compile your program

– Becoming familiar with the structure of a Java program.

– Learn Java’s keywords


– Answer quiz.

– Install Netbeans

– Get to know your environment

– Write a basic application

This module discusses variables, why they are needed and some of the non-object-oriented aspects of Java. You will learn to;

– Describe primitive types

– Declare and use primitive variables

– Declare Strings

– Manipulate and use Strings

– Work with numbers.

– Understand variable scope.

– Effectively comment your Java programs.


– Answer quiz.

This module introduces the concept of arrays and the storing and manipulating data. You will learn about; 

– What are arrays?

– Initializing arrays.

– Using a single dimension array.

– Using multidimensional arrays.

– Work with command line arguments


– Answer quiz.

There are times you need to check certain conditions within your program. To do this you use operators. So, in this module you will learn to use the;

– Assignment

– Relational

– Incremental, decremental

– Logical

– Boolean

– Bitwise

– operators as well as how order matters when using them.


– Answer quiz.

Often you need to make decisions on your program’s flow. In this lesson you learn to use;

– The if statement and its companion else.

– Nesting if’s

– Using a switch

– Using the ternary operator, which is a fancy if statement.


– Answer quiz.

– Programming tasks based on decision statements.

Often you need to do a similar task many times. In this lesson you get to understand looping, often called iteration. You will learn about;

– pre-test and post-test loops.

– Counter and sentinel controlled loops.

– Using the ‘while’ Loop

– Using the ‘for’ Loop

– Using the ‘do while’ Loop

– Using the ‘for each’ Loop

– Jumping to the start and out of your loops


– Answer quiz.

– Programming tasks based on iteration constructs and arrays

This is a big module where we discuss one of the most important components to understand in Java, the class, how to define them and then construct objects out of them. In this lesson you will learn to;

– Define classes

– Define class behaviour.

– Working with method behaviour

– Passing arguments to a method.

– Varargs

– Access control and encapsulation

– Getting answers from a method.

– Creating objects using your class blueprint.

– Referencing your objects


– Answer quiz.

– Programming tasks based on class design and instantiation

There is a class in Java you will use a lot. This is the String class. In this module you will learn to;

– Constructing Strings

– Manipulating Strings.

– Extracting character and other String from an existing String

– Comparing Strings.

– Understanding and using a StringBuffer and StringBuilder


– Answer quiz.

– Programming tasks based on String manipulation.

Another cornerstone of object-oriented programming in Java is inheritance and the concept of abstraction. In this module you will learn how to;

– Define inheritance in the context of a Java class hierarchy

– Create a subclass

– Understand polymorphism and the principles of overloading and overriding.

– Call methods in the super class.

– Use the instanceof operator to test an object’s type

– Cast a superclass reference to the subclass type

– Explain the difference between abstract and nonabstract classes

– Create a class hierarchy by extending an abstract class.

– Preventing a class from being subclassed.


– Answer quiz.

– Programming tasks based on inheritance and polymorphism

In this module we discuss another pillar of object-orientation and that is the concept of modularity, which Java achieves by means of packages. You will learn to:

– Defining a package

– Finding packages and CLASSPATH.

– Understand access protection

– Importing packages into your program


– Answer quiz.

Continuing the concept of Inheritance, we look at the interfaces. This is an important concept in Java. In this module you will learn all about;

– Defining an interface

– Implementing interfaces

– Nesting interfaces

– Applying interfaces

– Defining variables in interfaces

– Extending interfaces

– default interface methods

– Multiple inheritance issues

– static methods.


– Answer quiz.

– Programming tasks based on inheritance, polymorphism and interfaces

In this module you will look at and learn about a special data structure provided in Java’s Collections Framework called an ArrayList: You will; 

– Learn all about the ArrayList class

– Manipulate ArrayLists that contain objects.


– Answer quiz.

– Programming tasks based on ArrayLists

In this module you will learn about special interfaces and how to use them when programming using the functional programming paradigm known as Lambdas. You will get to know about;

– Lambda expression fundamentals

– Functional interfaces

– Lambda expressions as arguments

– Lambda expressions and exceptions

– Predefined functional Interfaces

– Specify a data modification by passing a predicate lambda expression to the Collections class


– Answer quiz.

– Programming tasks based on simple Lambda expressions

In this module we discuss how to handle any abnormal events that may occur during your program’s execution. You will learn about;

– Exception types

– Using try, catch and finally

– Displaying a description of an Exception

– Multiple catch clauses

– Nested try statements

– throw and throws keywords

– Java’s built-in Exceptions

– Creating your own exceptions

– Chained exceptions


– Answer quiz.

– Programming tasks based on Exception Handling

In this module we look at a component added in Java 8, which is the new way of handling dates

and times in Java. You will understand;

– Time and date fundamentals

– Formatting date and time

– Parsing date and time strings

– How to create a java.time.LocalDateTime object to show the current date and time.


– Programming tasks based on Date and Time API

Download our course content

Course Price : N316, 000