4 courses match your filters.
Objects and references, the String and generics model, the collections framework, exceptions, the Stream API and the concurrency essentials.
Java · Collections · Streams · Concurrency
Output-based
Learn Go from the type system up: structs, methods and interfaces, then slices, maps, errors as values, and goroutines with channels.
Go · Concurrency · Interfaces · Backend
Output-based
Ownership, borrowing and lifetimes, learned the way the borrow checker expects.
rust · ownership · borrowing · lifetimes
Output-based
Null safety, data classes and coroutines on the JVM.
kotlin · null-safety · data-classes · sealed-class
Output-based