Разбирая чужой код, наткнулся на такую строчку
Class <?> cls = Class.forname("java.util.ArrayList");
Объясните, пожалуйста, что означает знак вопроса в скобках, и что это, подгружает что-то из класса ArrayList?
<?> - короткая версия для <? extends Object>, так называемые Unbounded Wildcards. Позволяет задавать любой тип дженерику.
Class<?> обозначает, что cls может быть любого типа.
По возможности лучше избегать такого кода, так как он может привести ко множеству проблем.
Class.forname же возвращает класс по имени, чтоб потом, к примеру, можно было создать его экземпляр cls.newInstance();
Основные этапы разработки сайта для стоматологической клиники
Продвижение своими сайтами как стратегия роста и независимости