Objetos ajuda por favo!

Tenho o seguinte problema um objeto do tipo Celula(tipo abstrado) chamado fraseCorreta. Tenho o encadeamento:
fraseCorreta = new Celula( “Guerra”);
fraseCorreta.prox = new Celula(“não’);
fraseCorreta.prox.prox = new Celula(”!");

tenho que criar na classe Celula um método que public String toString(), em que a chamada fraseCorreta.toString(), imprime toda a frase armazenada na lista encadeada fraseCorreta. Como faço isso?

obs.: fraseCorreta é um objeto q não está contido na classe Celula.

[color=“green”]*Movido para o forum Java Básico (Iniciantes). jairelton[/color]

1o respondendo a sua duvida:

Vc pode fazer assim:

public String toString(){
    String retorno;
    retorno = conteudo;
    if(prox != null){
        retorno += " " + prox.toString();
   }
   return retorno;
}
  • No caso, conteudo eh o atributo onde vc guarda o valor da frase.
  • vc poderia escrever simplesmente prox no lugar de prox.toString() pq quando vc tenta imprimir um obejto, ele chama o toString() pra vc automaticamente
  • evite fraseCorreta.prox = new Celula("não’); , isto é, evite setar um atributo da sua classe diretamente. Torne-o private e faça um setter para ele.

Obrigado pela resposta, foi uma ajuda q nao achei no meu livro.
Na verdade a forma como passei o meu problema está um pouco diferente da verdadeira. simplifiquei pq senão todos iam ficar desanimados de ler