1
resposta

Dúvida sobre o uso do static

Estou com dúvida por que foi utilizado staticno método public static EntityManager getEntityManager()

package br.com.alura.loja.util;

import javax.persistence.EntityManager;
import javax.persistence.EntityManagerFactory;
import javax.persistence.Persistence;

public class JPAUtil {
    private static final EntityManagerFactory FACTORY = Persistence.createEntityManagerFactory("loja");

    public static EntityManager getEntityManager() {
        return FACTORY.createEntityManager();

    }
}
1 resposta

Bom dia.

A ideia de estático (static) é que você tenha em memória apenas uma instância da classe, que possa ser utilizada em vários pontos, reaproveitando o que está em memória. E a chamada da função passa a ser realizada sem a necessidade de criar novas instâncias , o que leva a menos uso de recursos, como memória e processamento, para criação e gestão de novos objetos em memória.

E também é necessário que seja static, pois a variável utilizada em questão, também é static. Você só conseguirá fazer a chamada corretamente quando método e variável estiverem marcada como static.

Bons estudos!