Pourquoi « pm.newQuery (Employee.class) » et non « pm.newQuery (employé) » dans JDO?

StackOverflow https://stackoverflow.com/questions/2542215

  •  23-09-2019
  •  | 
  •  

Question

Dans ce JDO, pourquoi est-.class nécessaire ici?

Query averageSalaryQuery = pm.newQuery(Employee.class);

Je préférerais écrire cette syntaxe plus concise si possible?

Query averageSalaryQuery = pm.newQuery(Employee);
Était-ce utile?

La solution

Query averageSalaryQuery = pm.newQuery(Employee);

Eh bien, il doit encore être valide Java, ce qui précède n'est pas ...

La façon de se référer à une classe en Java utilise la syntaxe .class.

Autres conseils

Utilisation du « .class » suffixe est une convention de la langue, de sorte que votre deuxième exemple est juste sémantiquement invalide. Tu ne peux rien faire à ce sujet vraiment. Il est équivalent à appeler la méthode getClass() sur une instanciation de la classe, comme:

Query averageSalaryQuery = pm.newQuery(new Employee().getClass())

Il est donc déjà un raccourci;)

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top