Duvida com Static

Fis uma implementação simples para cadastramento de pessoas, na classe construtora uso todos os atributos e métodos privade corretamente, porem nas outras classes que uso para gerenciar um vetor de pessoas não consigo implementar usando métodos que não sejam static, coloquei em anexo a workspace dessa implementação.
Alguém ai pode me dar uma luz???
Quero saber se o correto é assim mesmo do jeito que fiz ou tenho que transformar os métodos de GerenciaPessoas em privade ou tirar o static dos métodos.

Eu não olhei nada até porque estou sem tempo. Mas se tu fez tudo baseado em métodos estáticos, tem algo bem errado ai.
Tu não cria uma única instância, cadê a orientação a objeto ?

Se puder, posta umas duas classes aqui e como tu acessa os métodos, já facilita.

blz… segue ai 2 classes então:
A construtota:

[code]
public class Login {
private int codPessoa;
private String usuario,senha;

public int getCodPessoa() {
	return codPessoa;
}
public void setCodPessoa(int codPessoa) {
	this.codPessoa = codPessoa;
}
public String getUsuario() {
	return usuario;
}
public void setUsuario(String usuario) {
	this.usuario = usuario;
}
public String getSenha() {
	return senha;
}
public void setSenha(String senha) {
	this.senha = senha;
}

public boolean equals(String str1, int tipo){
	if(tipo==1){
		int codPessoa1 = Integer.parseInt(str1); 
		if(codPessoa1 == this.codPessoa){
			return true;
		}
	}else if(tipo==2){
		String str2 = this.usuario;
		return str1.equalsIgnoreCase(str2);
	}else if(tipo==3){
		String str2 = this.senha;
		return str1.equals(str2);
	}
	return false;
}

}[/code]

ea que gerencia a construtora que uso métodos staticos pr isso:

[code]
import java.util.Scanner;
public class GerenciarLogin {
private static Scanner entrada = new Scanner(System.in);
private static Login vetLogin[] = new Login[1000];
static int numLogin = 0;
public static void criaMestre(){
Login unidade = new Login();
unidade.setCodPessoa(numLogin);
unidade.setUsuario(“mestre”);
unidade.setSenha(“123456”);
vetLogin[numLogin] = unidade;
numLogin++;
}

public static boolean fazerLogin(){
	System.out.print("Login: ");
	String usuario = entrada.nextLine();
	System.out.print("Senha: ");
	String senha = entrada.nextLine();
	int cont=0;
	boolean r1,r2;
	do{
		r1 = vetLogin[cont].equals(usuario, 2);
		r2 = vetLogin[cont].equals(senha, 3);
		cont++;
		if(r1 && r2){
			return true;
		}else{
			System.out.println("Usuario ou senha incorretos!");
		}
	}while(cont<numLogin || (r1&&r2));		
	return false;
}

}[/code]

Uma observação, quando se sobrescreve o método equals, conforme fez na classe Login, deve-se sobrescrever o método hashCode().

Sobre os métodos estáticos, talvez o método “fazerLogin” faça sentido ser estático, pois podemos considera-lo, inclusive, como um método “utilitário”. Mas o método criaMestre, porque criou ele estático ? Eu não tenho que ter um Gerenciador de Login para poder criar um Mestre? Penso que sim, logo, preciso de uma instância dele. Por isso, acho mais coerente usar como um método de instância e não de classe.