Estou a trabalhar num grande projecto em java e como é utilizado muitos valores constantes resolvi criar uma classe que contem apenas variaveis static final (constantes) assim quando tiver que mudar o valor de alguma delas só tenho q ir a um sitio em vez de estar a percorrer todas as classes do meu projecto para fazer isso.
Vejam o inicio dessa classe:
public class SystemCons {
/* DATABASE CONFIGURATION */
public static final String DBDRIVER = "com.mysql.jdbc.Driver";
public static final String HOST = "localhost";
public static final String LOGIN = "morcego";
public static final String PASSWORD = "xxxxxxxxx";
//...............
}
A meu ver facilita bastante as coisas mas queria saber se é boa politica em termos de programacao em java, o que acham?
ah legal, acho que você poderia como outra forma usar um arquivo texto, xml. Desta forma você não precisaria de uma classe somente para armazenar esses valores.
Muitas vezes as pessoas optam por declarar as constantes em interfaces ao invés de classes.
Mesmo porque qualquer variável de uma interface é automaticamente uma constante (public static final).
Não sei se tem algum benefício em relação a declarar em uma classe, mas já vi bastante (talvez gaste menos memória, mas não sei).
vendo essa duvida de classes com valores constantes, me ocorreu uma duvida…
pensei em colocar minhas constantes e mensagens do sistema em um arquivo XML…como ficaria o acesso a esses dados?? seria mais lento do q em classes?? seria praticamente imperceptivel??