Согласно документам App Engine, PersistenceManagerFactory
должен быть создан только один раз в приложении.Почему PMF.java является «финальным» классом?
предоставляет этот образец:
package guestbook;
import javax.jdo.JDOHelper;
import javax.jdo.PersistenceManagerFactory;
public final class PMF {
private static final PersistenceManagerFactory pmfInstance =
JDOHelper.getPersistenceManagerFactory("transactions-optional");
private PMF() {}
public static PersistenceManagerFactory get() {
return pmfInstance;
}
}
Почему PMF.java
должны быть «public final class
» в дополнение к делает pmfInstance
«private static final
» объект?
Я согласен, хотя это обязательно вызовет дебаты. Возможно, вы захотите привести элемент в «Эффективная Java_», который согласен с вами. :-) –
Учитывая, что конструктор уже закрыт, он все еще кажется излишним. Пункт 4 Эффективной Java оставляет окончательный вариант. – Yishai