En Java, se enseña que las variables se deben mantener en privado para permitir una mejor encapsulación, pero ¿qué pasa con las constantes estáticas? Este:'public static final' o 'private static final' con getter?
public static final int FOO = 5;
sería equivalente en consecuencia a esto:
private static final int FOO = 5;
...
public static getFoo() { return FOO; }
Pero lo que es mejor la práctica?
La votación para cerrar no es constructiva (según los comentarios obstinados que ya se ofrecen). Es 'FOO' realmente una constante? ¿La clase proporciona 'FOO' como parte de una API? ¿O parte de una aplicación de punto final? Hay constantes matemáticas que nunca cambian. También hay indicadores de bits que nunca deberían cambiar (ver SWT). Entonces la respuesta es "Depende." –