1
JavaAdvanced#generics
Type parameters that enable type-safe collections and methods (List<String>). Erased at runtime (type erasure), so generic info is not available via reflection on instances.
class Box<T> {
private T value;
void set(T value) { this.value = value; }
T get() { return value; }
}
Box<String> b = new Box<>();
b.set("hello");