Java Programming Masterclass

Awards Event  2019-12-09 12:00 a.m.    2019-12-20 12:00 a.m.

Event Information

Course Name: Java Programming Masterclass

Venue: Tech for Development Training Center, Nairobi, Kenya

Event Date: 9th to 20th Dec, 2019

Course Fee: KES 220,000 OR USD 2,200

Online Registration: Register here

Tech For Development -T4D would like to invite you to a high impact Training Course in Java Programming Masterclass to be held in Nairobi, Kenya from 9th to 20th Dec, 2019

Course Description

Java is a general-purpose programming language that is class-based and object-oriented. It is used for both client-server programs, web applications and Android development. It is one of the most popular programming languages and runs on all platforms via the Java Virtual Machine (JVM). While it is mostly considered to be an object-oriented language, it is really more of a multi-paradigm language due to the inclusion of imperative and generic paradigms. It is a statically typed language and has various type-safety features built right in.

By the end of the course you will understand Java extremely well and be able to build your own Java apps and be productive as a software developer.

Who should attend?

  • Anyone with zero programming experience and want to learn Java Programming
  • Absolute beginners with no previous coding experience, to intermediates looking to sharpen their skills to the expert level.


  • A computer (Windows, Mac, or Linux).
  • No prior knowledge of Java is required.
  • No previous programming experience needed.



10 days

Course Objectives

What you will learn:

  • Object Oriented Programming - Class, Object, State and Behavior
  • Basics of Java Programming - Expressions, Variables and Printing Output
  • Conditionals with Java - If Else Statement, Nested If Else, Java Switch Statement, Java Ternary Operator
  • Loops - For Loop, While Loop in Java, Do While Loop, Break and Continue
  • Encapsulation, Abstraction, Inheritance and Polymorphism
  • Java Abstract Class and Interfaces.
  • Generic classes & methods
  • Functional Programming
  • Threads and MultiThreading
  • Exception handling
  • Primitive types


Course Content

Module I

Introduction to Java

  • What is Java?
  • Java Features
  • Where Java is used

Java Development Environment Setup

  • Software tools needed
  • Java Development Kit (JDK) installation on Windows
  • Installing Intellij IDEA for Windows
  • Install JDK for Mac
  • Installing Intellij IDEA for Mac
  • Install JDK for Linux
  • Installing Intellij IDEA for Linux
  • Configure IntelliJ IDEA

Module II

Java Basics and Fundamentals


  • First Java Program
  • Defining the main method

Modifiers in Java

  • Access Control Modifiers
  • Non Access Modifiers

Variables in Java

  • Types of variables

Data Types in Java

  • Primitive Data types
  • Non Primitive Data types

      Exercise - Variables and Data Types

      Data type Conversions

  • Implicit Conversions
  • Explicit Conversions


  • Comparison Operators
  • Logical Operators
  • Ternary Operator
  • Operator Precedence
  • Abbreviating Operators

Control Flow Statements in Java

  • Selection Statements
  • Iteration Statements
  • Jump Statements


Methods in Java

  • Methods Syntax
  • What is a return Statement
  • Method Execution
  • Method Overloading


Module III

Object Oriented Programming (OOP)

  • Introduction to OOP
  • Basics of Designing a Class - Class, Object, State and Behaviour
  • Constructors
  • Inheritance
  • Reference vs Object vs Instance vs Class
  • this vs super keywords
  • Method Overloading vs Overriding
  • Static vs Instance Methods
  • Static vs Instance Variables
  • Encapsulation
  • Polymorphism


Arrays in Java

  • Array Declaration
  • Types of Arrays
  • Memory Allocation in Arrays
  • References Types vs Value Types


Module IV

Abstract Classes & Interfaces

  • Interfaces
  • Inner Classes
  • Abstract Classes
  • Interface vs Abstract Class


Generics in Java

  • Introduction to Generics
  • Implementing Generics
  • Generics Puzzles
  • Generics and WildCards


Naming Conventions and Packages

  • Naming Conventions in Java
  • Packages Explained

Java Collections

  • Collections Overview
  • Binary Search
  • Collections List Methods
  • Maps
  • Immutable Classes
  • Sets & HashSet
  • Symmetric & Asymmetric Sets
  • Sorted Collections
  • StockList Class With Maps
  • TreeMap and Unmodifiable Maps

Module V

Threads and Concurrency in Java

  • Introduction to Threads and Multithreading
  • Threads explained
  • Interrupt and Join
  • Multiple Threads and Threads Variables
  • Synchronisation
  • Deadlocks, wait, notify and notifyAll methods
  • Data Binding


Lambda Expressions

  • Lambda Expressions Introduction
  • Lambda Expressions Nested Blocks
  • Scope and Functional Programming
  • Functional Interfaces & Predicates
  • Streams - Intermediate and Terminal Operations
  • Streams - Flatmap & Lambda Best Practices


Regular Expressions

  • Regular Expressions Introduction
  • Character classes and Boundary Matchers
  • Quantifiers and the Pattern and Matcher classes
  • Matcher find and Group Methods
  • And, Or & Not


Module VI

Exception Handling

  • Basics of Handling Exceptions - try and catch
  • Basics of Handling Exceptions - Exception Hierarchy, Matching and Catc
  • Checked Exceptions vs Unchecked Exceptions
  • Throwing an Exception


Files and Directories

  • Files List Method
  • Read content from a File
  • Writing Content to a File


  • Database Terminology
  • Install and Setup SQLite
  • SQLite in details
  • Querying Data With SQL
  • SQL Order by and Joins
  • Wildcards in Queries and Views
  • JDBC and SQLite GUI Browser
  • Creating Databases With JDBC in Java
  • JDBC Insert, Update, Delete
  • Executing SQL in DB Browser
  • Functions and Views
  • SQL Injection Attacks and Prepared Statements
  • JDBC with a GUI Program


Action plan.


This instructor led training course is delivered using a blended learning approach and comprises of presentations, guided sessions of practical exercise, web based tutorials and group work. Our facilitators are seasoned industry experts with years of experience, working as professional and trainers in these fields.

All facilitation and course materials will be offered in English. The participants should be reasonably proficient in English.


Visit our website for more details.

Tailor-made training

This training course can also be tailored for your organization. This way, your organization will benefit by: 

  • Using own datasets and tools during the training.
  • Being able to choose areas of interest you wish the trainer to put more emphasis on.
  • Taking the course in-house or at a venue of choice.
  • Cutting on the cost of transport and accommodation.


Kindly visit this link to see video and photo testimonials of our previous training events.


Need more information? Kindly visit this link to see answers to frequently asked questions.

How to participate

Register as individual

Contact information

Tel: +254 706909947

Kind regards.
Rose Ireri,
Customer Relationship Officer,
Tech For Development
Innovation for impact