[Resolvido] Criar um Objeto identico mais diferente com seu estado inicial

3 respostas
Romildo_Paiter

Bom dia pessoal beleza.

Algem de vocês já pensou em instanciar um mesmo objeto, mas que de alguma forma seja uma instancia diferente.

Estou trabalhando em uma lista em tempo de execução. E ao editar, depois que eu saio ele mantem o estado, quero colocar o botão cancelar para fazer ele receber uma instancia de um objeto dele mesmo com seu estado inicial.

Se alguem puder ajudar

private Atividade atividade;
private Atividade atividadeEstadoInicial;

public void setAtividade(Atividade atividade){
   this.atividade = atividade

   this.atividadeEstadoInicial = atividade // Esse objeto tem que ser uma instancia diferente.
}

public void cancelarEdicao(){
   this.atividade = this.atividadeEstadoInicial;
}

Valeu pessoal obrigado.

3 Respostas

Hebert_Coelho

Vc pode fazer uma cópia do seu objeto inicial (na unha mesmo), ou sua classe pode implementar a interface Cloneable e na sua classe você trata isso.

Aí basta chamar carro.clone(); que tudo irá funfar. [=

E

se vc dar um “new”

Romildo_Paiter

Obrigado pessoal.

A solução adotada foi:

Utilizar o BeanUtils.cloneBean. para Efetuar a clonagem do obejto mas mantendo em outra instancia.

this.atividadeEstadoInicial = (Atividade) BeanUtils.cloneBean(atividade);

Obrigado pessoal.

Criado 6 de janeiro de 2012
Ultima resposta 6 de jan. de 2012
Respostas 3
Participantes 3