¿Debería declararse el registrador estático o no? Por lo general, he visto dos tipos de declaración para un registrador:
registro de registro protegido = nuevo Log4JLogger (aClass.class);
o
Registro de registro estático privado = nuevo Log4JLogger (aClass.class);
¿Cuál debería usarse? ¿Cuales son las ventajas y desventajas de ambos?
static
es una referencia por clase. no estático es una referencia por instancia (+ inicialización). Entonces, en algunos casos, este último tiene un impacto significativo en la memoria si tiene toneladas de instancias. Nunca use lo no estático en un objeto frecuente . Siempre uso la versión estática. (que debe estar en mayúsculas LOG
)
private static final Log log
que esté en minúsculas. El registrador no es una constante, el registrador es un objeto final estático (que puede ser mutado). Personalmente siempre uso logger
.