1
JavaIntermediate#generics
API to inspect and modify classes, methods, and fields at runtime. Used by frameworks (Spring, Hibernate) and serializers. Comes with performance and security trade-offs.
Class<?> clazz = Class.forName("java.util.ArrayList");
Method[] methods = clazz.getDeclaredMethods();
Object instance = clazz.getDeclaredConstructor().newInstance();