Ответ
Generics в Java — это механизм для создания обобщённых типов, позволяющий писать код, который работает с разными типами данных, сохраняя безопасность типов на этапе компиляции. Они помогают избежать ошибок ClassCastException
и уменьшают необходимость в приведении типов.
Пример:
List<String> strings = new ArrayList<>();
strings.add("Hello");
String value = strings.get(0); // Безопасно, не требует приведения типов
Ключевые моменты:
- Параметризация типов (
<T>
) - Ограничения через
extends
(например,<T extends Number>
) - Совместимость с обратной совместимостью (стирание типов)