Skip to main content

Java

Overview

Java is a JVM language noted for portability, mature tooling, and a vast ecosystem for enterprise backends, Android (historically), and big data (Kafka, Hadoop ecosystem). Strong typing, garbage collection, and concurrency primitives (java.util.concurrent) support large teams.

Key concepts

  • JVM & bytecode — Write once, run anywhere (with compatible JVMs).
  • OOP — Classes, interfaces, inheritance, generics.
  • Memory model — GC, weak/soft references, Optional for null-safety style.
  • Modules (JPMS) — Encapsulation at scale since Java 9.
  • Ecosystem — Spring, Quarkus, Micronaut for services.

Class load and execution

Sample: record + stream (modern Java)

import java.util.List;

public record User(String name, boolean active) {}

public class Demo {
public static void main(String[] args) {
var users = List.of(new User("Ada", true), new User("Bob", false));
long active = users.stream().filter(User::active).count();
System.out.println(active);
}
}

References