JavaIntermediate#generics

What are Java 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.

Example
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");

Related Questions

1
JavaAdvanced#generics

Difference between '? extends T' and '? super T'?

Open
2
JavaAdvanced#concurrency#jvm

What is the Java Memory Model (JMM)?

Open
3
JavaAdvanced#spring

Explain Spring Bean lifecycle.

Open