Cloneable eh uma interface, isto eh, contem apenas uma declaracao padrao
para o metodo clone(). Para obter uma copia do objeto, vc tem que criar uma
nova instancia do objeto, com os mesmos atributos do objeto original. Isto
geralmente eh feito implementando-se a interface Cloneable, para manter uma
padronizacao (ie, vc pode juntar objetos completamente diferentes, mas que
implementam a interface Cloneable, num array do tipo Cloneable[]), mas isto
nao eh obrigatorio.

Exemplo:

public class DollyLabel extends Label implements Cloneable {
    private int id;      // atributo privado sem acesso direto por metodos
'set'

    public DollyLabel(String tex) {
        super(tex);
    }

    ...

    public Object clone() {
        DollyLabel dolly = new DollyLabel(this.getText());
        dolly.id = this.id;     // Isso pode ser feito, pois este objeto eh
da mesma classe que dolly
        return (Object)dolly;   // Este cast eh feito automaticamente, mas
eh preciso fazer outro
                                //   cast para usar dolly como DollyLabel!
    }
    public DolllyLabel dollyClone() {
        DollyLabel dolly = new DollyLabel(this.getText());
        dolly.id = this.id;
        return dolly;           // Este clone nao necessita de cast, pois ja
retorna do tipo DollyLabel
    }
}



----- Original Message -----
From: Javanes <[EMAIL PROTECTED]>
To: <[EMAIL PROTECTED]>
Cc: <[EMAIL PROTECTED]>; <[EMAIL PROTECTED]>;
<[EMAIL PROTECTED]>; DANIEL VIEIRA VIVEIROS
<[EMAIL PROTECTED]>
Sent: Tuesday, July 18, 2000 10:07 AM
Subject: Re: [SouJava-J] Copias de objetos


> Eu tentei usar a classe clonable mas não tive sucesso.
> Alguém tem algum código que exemplifique a utilização do clone ????
> Obrigado.
>
> Fabio Rodrigues - Telematica wrote:
> >
> > DANIEL VIEIRA VIVEIROS wrote:
> >
> > > Oi,
> > >
> > > Como faco para criar objetos identicos sem que eles compartilhem o
mesmo
> > > endereco de memoria ?
> > >
> > > Obrigado,
> > > Daniel
> > >


    --------------------------- LISTA SOUJAVA ---------------------------
    http://www.soujava.org.br  -  Sociedade de Usuários Java da Sucesu-SP
    [dúvidas mais comuns: http://www.soujava.org.br/faq.htm]
    [para sair da lista: http://www.soujava.org.br/forum/cadastrados.htm]
    [regras da lista: http://www.soujava.org.br/regras.htm]
    ---------------------------------------------------------------------

Responder a