Sabem os métodos getters e setters? Pois é, eu criei uma classe chamada InfData, que possui alguns métodos getters e setters. Instanciei a classe InfData na classe DBAdapter que manipula o banco. Setei alguns valores para as variáveis da InfData. Certo?
Bem, agora quero pegar estes valores numa outra classe, a Screen1Login, usando os getters. Eu apenas declarei a InfData, assim:
Na classe Screen1Login.java:
InfData infData;
(depois usei os infData.get…)
Na classe DBAdapter:
InfData inf = new InfData();
O que acontece é que não consigo pegar os valores setados na lá na classe DBAdapter. Afinal, como eu faço para acessar o mesmo objeto na memória e o valor de suas variáveis em qualquer classe do pacote?
Vejam minha classe InfData.java:
package
medicapp.application.tcc;
public
class InfData {
private String password;
private String user;
public InfData() {
}
public String getUser() {
return user;
}
public void setUser(String user) {
this.user = user;
}
public String getPassword() {
return password;
}
public void setPassword(String password) {
this.password = password;
}
}
Mostra a parte da classe Screen1login e DBAdapter onde tenta acessar as variáveis e onde não consegue como comentário que vai ficar melhor de entender.
independente da forma(por static ou usando uma instancia) que vc deseja acessar uma varaivel de uma classe a partir de outra. O segredo é o modificador de acesso, então o que você nao pode esquecer quando tiver programando:
public: todos tem acesso
protected: somente as classes que estao naquele package
private: como o nome já diz, ng tem acesso, exceto a propria classe.
Usar static ou não a questão é o acesso em si. E sim aos valores que sua variavel vai ter ao ser chamado qdo ela é static e quando ela n é static e dai vc precisa de uma variavel de instancia.
Se entendi o seu problema, vc deve ter o login e a senha vc passa pra sua classe de manipulacao de banco para que elea verifique se o usuario é valido; parqa isso:
Crie um objeto login e atribua o login e senha a ele
Feito isso passe este o bjeto para a classe de manipulacao de banco utilizando o metodo validarLogin(Login login); que retorna um usuario, que possui o atributo valid.
Na class de controle de login use a funcão isValid de Usuario para autorizar ou não o login.