Warum „pm.newQuery (Employee.class)“ und nicht „pm.newQuery (Mitarbeiter)“ in JDO?

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

  •  23-09-2019
  •  | 
  •  

Frage

In diesem JDO, warum ist .class hier gebraucht?

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

Ich würde es vorziehen, diese kürzere Syntax, wenn möglich, zu schreiben?

Query averageSalaryQuery = pm.newQuery(Employee);
War es hilfreich?

Lösung

Query averageSalaryQuery = pm.newQuery(Employee);

Nun, es hat immer noch gültig Java sein, die die oben ist nicht ...

Der Weg zu einer Klasse in Java beziehen ist die .class Syntax.

Andere Tipps

die „.class“ Suffix zu verwenden ist eine Konvention der Sprache, so dass Ihr zweites Beispiel nur semantisch ungültig ist. Nichts kann man wirklich dagegen tun. Es ist gleichbedeutend mit der getClass() Methode einer Instanziierung der Klasse zu nennen, wie:

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

Es ist also schon eine Abkürzung;)

Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top