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.
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
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
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
Object Oriented Programming (OOP)
- Introduction to OOP
- Basics of Designing a Class – Class, Object, State and Behaviour
- Reference vs Object vs Instance vs Class
- this vs super keywords
- Method Overloading vs Overriding
- Static vs Instance Methods
- Static vs Instance Variables
Arrays in Java
- Array Declaration
- Types of Arrays
- Memory Allocation in Arrays
- References Types vs Value Types
Abstract Classes & Interfaces
- Inner Classes
- Abstract Classes
- Interface vs Abstract Class
Generics in Java
- Introduction to Generics
- Implementing Generics
- Generics Puzzles
- Generics and WildCards
Exercises Naming Conventions and Packages
- Naming Conventions in Java
- Packages Explained
- Collections Overview
- Binary Search
- Collections List Methods
- Immutable Classes
- Sets & HashSet
- Symmetric & Asymmetric Sets
- Sorted Collections
- StockList Class With Maps
- TreeMap and Unmodifiable Maps
Threads and Concurrency in Java
- Introduction to Threads and Multithreading
- Threads explained
- Interrupt and Join
- Multiple Threads and Threads Variables
- Deadlocks, wait, notify and notifyAll methods
- Data Binding
- 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 Introduction
- Character classes and Boundary Matchers
- Quantifiers and the Pattern and Matcher classes
- Matcher find and Group Methods
- And, Or & Not
- 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
The instructor led trainings are delivered using a blended learning approach and comprise 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 professionals and trainers in these fields.
All facilitation and course materials will be offered in English. The participants should be reasonably proficient in English.
Upon successful completion of this training, participants will be issued with a certificate of participation.
The training is residential and will be held at T4D Training Centre in Westlands Nairobi, Kenya. The course fees cover the course tuition, training materials, two break refreshments, lunch, and study visits.
All participants will additionally cater for their, travel expenses, visa application, insurance, and other personal expenses.
We can also tailor-make our courses for you. This way, you/your organization will benefit by:
- Using own 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
For further inquiries, please contact us on details below:
Email: [email protected]
Mobile: +254 706909947
Accommodation is arranged upon request. For reservations contact the Training Officer.
Email: [email protected]
Mobile Number: +254 706909947
The course fee is KES 150,000.00 or USD 2,200.00 exclusive of VAT. The course fees covers the course tuition, training materials, two (2) break refreshments, lunch and study visits. Participants will cater for their travel and accommodation costs.
Payment should be transferred to Tech For Development – T4D account through bank on or before the course starting date.
Send proof of payment to [email protected]
Payment for the all courses includes a registration fee, which is non-refundable, and equals 15% of the total sum of the course fee.
- Participants may cancel attendance 14 days or more prior to the training commencement date.
- No refunds will be made 14 days or less to the training commencement date. However, participants who are unable to attend may opt to attend a similar training at a later date, or send a substitute participant provided the participation criteria have been met
Please Note: The program content shown here is for guidance purposes only. Our continuous course improvement process may lead to changes in topics and course structure.