Records
A record is a short way to declare a class that only carries data.
Pattern matching for instanceof
Pattern matching for `instanceof` (Java 16) checks a type and gives you a typed variable in one step.
Stream.toList()
`Stream.toList()` (Java 16) ends a stream with an unmodifiable list, so you no longer write `collect(Collectors.toList())` for the common case.