Java

Learn the language that powers enterprise applications, web services and Android.

Overview

Java is a general-purpose, object-oriented programming language that runs on the Java Virtual Machine (JVM), so the same program can run on Windows, Linux and macOS. It is one of the most widely used languages for enterprise back-ends, banking and finance systems, web services and Android apps.

Our Java track takes you from the first "Hello World" to the topics that companies ask about in interviews and use every day on the job: object-oriented design, collections, streams, exceptions, multithreading and database access.

Where it is used

  • Enterprise and banking applications
  • REST APIs and microservices
  • Android mobile apps
  • Big-data and messaging tools
  • Desktop and server-side utilities

A first taste of Java

The short program below filters a list of names with a Stream - something you will be comfortable writing by the end of the course.

import java.util.List;

public class Hello {
    public static void main(String[] args) {
        List<String> names = List.of("Anu", "Ravi", "Asha", "Kumar");
        names.stream()
             .filter(n -> n.startsWith("A"))
             .map(String::toUpperCase)
             .forEach(System.out::println);
    }
}

What you will cover

The key topics and features of Java

Core Syntax & Data Types

Variables, operators, control flow, arrays and strings - the building blocks of every program.

Object-Oriented Programming

Classes, objects, inheritance, interfaces, abstraction and polymorphism.

Collections & Generics

List, Set, Map and their implementations, with type-safe generics.

Lambdas & Streams

Modern, concise Java for processing data with functional-style code.

Exceptions & File I/O

Handle errors properly and read or write files and streams.

Multithreading

Threads, executors and synchronisation for responsive, concurrent programs.