In Java, why is it best practice to declare a logger static final
?
private static final Logger S_LOGGER
Because that is usually the kind of functionnality that can be shared accross all instances of your objects. It does not make much sense (90% of the time) to have a different logger for two instances of the same class.
However, you can also see sometimes logger classes declared as singletons or even simply offering static functions to log your stuff.