Класс результата используется для автоматического приведения вашего результата к заданному типу. Если вы не укажете его, результатом будет список массивов объектов. List<Object[]>
В Java обычно невозможно привести тип из одного универсального типа к другому, поэтому всегда используйте версию с типом, так как следующий код будет более понятным, безопасным и не потребует приведения.
Если в запросе вы выбираете только определенные поля, а не одно поле или объект, указывать его не нужно, поскольку возвращается значение по умолчанию List<Object[]>
.