В этом JDO, зачем .class нужен здесь?
.class
Query averageSalaryQuery = pm.newQuery(Employee.class);
Я бы предпочел написать этот более краткий синтаксис, если это возможно?
Query averageSalaryQuery = pm.newQuery(Employee);
Ну, это все еще должна быть действительная Java, которой выше не является ...
Для ссылки на класс в Java используется синтаксис .class.
Использование суффикса ".class" является соглашением языка, поэтому ваш второй пример просто семантически недопустим. Ничего не поделаешь. Это эквивалентно вызову метода getClass() при создании экземпляра класса, например:
getClass()
Query averageSalaryQuery = pm.newQuery(new Employee().getClass())
Так что это уже ярлык;)