minha duvida é a seguinte, tenho que implementar dois metodos em java, em um codigo pre escrito, para realiza uma função. obs: não posso mudar nada do codigo que ja esta escrito.
o problema é, no primeiro metodo que tenho que implementar, ele é void e tenho que criar / alocar um vetor.
eu uso o new, crio o vetor no mesmo metodo, verifico se foi criado (com um if) e saio do mesmo, ate ai tudo ok. porem em outro metodo, que ja esta ecrito, ele verifica(de novo) se o vetor foi criado / alocado, caso negativo ele sai do programa. ai que esta o problema, na segunda verificação ele não encontra o vetor e sai.
então pesquisando por ai, vi que eu teria que retornar o vetor para ele não ser limpo no garbage collector. como eu faço isso na pratica? ja tentei varias coisas, mas sempre ele acaba saindo com a mensagem de erro da segunda verificação.
vou colocar um trecho do godigo para ver se ajuda mais…
public void leituraArquivo()
{
...
alocaMemoria();
inicializaVetorProdutos();
...
public void alocaMemoria() //metodo que tenho que implementar (não posso altrar nada fora dele)
{
String[] vrVetorProdutos = new String[iTotalProdutos];
if (vrVetorProdutos == null) //codigo feito por mim.
{
System.out.println("vetor não alocado!!!");
System.exit(1);
}
}
public void inicializaVetorProdutos() //metodo que não posso alterar
{
if (vrVetorProdutos == null)
{
System.out.println("Erro! A memoria do vetor nao foi alocada");
System.exit(1);
}
for (int iPosicao=0; iPosicao < vrVetorProdutos.length; iPosicao++)
{
vrVetorProdutos[iPosicao] = new CProduto();
}
}
}
lembrando que, não posso alterar nada que não foi desiguinado (nesse caso, unica coisa que posso alterar é o alocaMemoria). eu posso criar novos metodos e classes, porem tenho que usa-los nos metodos que preciso implementar.
obrigado pela atenção, att Thiago