Learn

02 — Learn: Basics to Advanced

Part of: docs/00-INDEX.md

Read chapters in order. Each links to runnable .java files.

  1. Read one chapter (15–25 min)
  2. Run the code: java pkg1core/core1HelloWorld.java
  3. Experiment — change code, re-run
  4. For interviews → matching 03-interview topic

Before chapter 01

Doc Purpose
01-orientation/01-TutorialAndHistory.md What is Java?
01-orientation/02-LearningPath.md Package run order

Chapters 01–09 — Java basics

Ch Title Code
01 Getting Started pkg0intro, core1HelloWorld
02 Variables & Types core2, core3
03 Operators & Casting core4
04 Control Flow core5
05 Loops core6
06 Methods core7
07 Arrays core8
08 Strings core9
09 User Input core24

Chapters 10–15 — OOP

Ch Title Code
10 Classes & Objects core25
11 Constructors & Encapsulation core26, core10
12 Inheritance & Polymorphism core11, core12
13 Abstraction & Interfaces core13, core14
14 Static & Enums core27, core15
15 Records & Sealed core16, core17

Chapters 16–21 — Core APIs

Ch Title Code
16 Exceptions core18
17 Collections core19, core28
18 Generics core20
19 Lambdas core21
20 Streams & Optional core22, core23
21 Java 5→21 pkg2versions

Chapters 22–24 — CS & practice

Ch Title Code
22 Data Structures pkg3datastructures
23 Algorithms pkg4algorithms
24 LeetCode pkg5leetcode

Chapters 25–27 — Senior

Ch Title Code
25 JVM & Memory pkg6jvm
26 Concurrency pkg7, pkg16
27 Design Patterns pkg8patterns

Chapters 28–32 — Applied Java

Ch Title Code
28 I/O & NIO pkg9io
29 Networking pkg10networking
30 JDBC pkg11jdbc
31 REST APIs pkg12restapi
32 Std Libraries pkg13libs

Chapters 33–41 — Professional & full-stack

Ch Title Code
33 Testing pkg14testing
34 Modules & SPI pkg15modules
35 Serialization pkg20serialization
36 Performance & Build pkg19, build/
37 Interview Prep 03-interview/
38 Metaprogramming pkg17metaprogramming
39 Resilience Patterns pkg18resiliencepatterns
40 Spring Boot Intro pkg21spring
41 REST & Frontend projects/05-notes-web

Projects (hands-on labs)

See 07-projects/00-INDEX.md for the full ladder (gradebook → library → todo REST → Spring notes → browser UI).


Package map (learn path)

Package Chapters Topics
pkg0intro 01 Hello World, setup
pkg1core 01–15 Core language & OOP
pkg2versions 21 Java 5→21 features
pkg3datastructures 22 DS implementations
pkg4algorithms 23 Sorting, searching, graphs
pkg5leetcode 24 LeetCode study plans (+ common/ helpers)
pkg6jvm 25 JVM, memory, GC
pkg7concurrency 26 Threads, executors
pkg16advconcurrency 26 JMM, advanced concurrency
pkg8patterns 27 Design patterns
pkg9iopkg15modules 28–34 I/O, networking, JDBC, REST, libs, testing, modules
pkg17metaprogramming 38 Annotations, proxies, reflection
pkg18resiliencepatterns 39 Circuit breaker, retry, bulkhead
pkg19performancepkg20serialization 35–36 Performance, serialization
pkg21spring 40–41 Spring Boot notes API

Milestones

After ch. You can…
09 Write a console program with loops, methods, classes
15 Model problems with OOP
20 Use Collections + Streams on real data
23 Implement DSA from memory
27 Explain JVM, threads, patterns
32 Build file/HTTP/DB-backed apps
37 Pass senior Java interviews
40 Build Spring Boot services with resilience patterns
41 Connect a browser UI to your Java API

Quick ref → 05-quick-ref/00-INDEX.md

Start → 01 Getting Started