Aula de estudante:
clone do clone do pacote;/*para clone, essa desculpa deve ser implementada: clonável, para marcar esse objeto, clonável: esta classe implementa a interface clonável para indicar que o método objeto.Clone () pode copiar legalmente a instância desta classe por campo. Essa interface é uma interface de tag, dizendo que a classe que implementa essa interface pode realizar a cópia de objetos. */classe pública aluno implementa clonável {nome da string privada; private int age; public student () {} public student (nome da string, int age) {super (); this.name = name; this.age = Age;} public string getName () {Nome de retorno;} public void setName (string name) {this.Name = Name; {this.age = Age;} // Reescreva a subcoluna do método de clonagem para chamar @OverrideProtected Object clone () lança clonenotsupportedException {return super.clone ();}}Teste aula de estudante de clonagem:
clone do clone do pacote;/ * * Void protegido Finalize (): Este método é chamado pelo coletor de lixo do objeto quando o coletor de lixo determina que não existem mais referências ao objeto. Usado para reciclagem de lixo, mas é incerto quando será reciclado. *Objeto protegido clone (): cria e retorna uma cópia deste objeto. * A: Reescreva este método * * clonável: Esta classe implementa a interface clonável para indicar que o método objeto.Clone () pode copiar legalmente a instância desta classe por campo. * Essa interface é uma interface de tag, dizendo que a classe que implementa essa interface pode realizar a cópia de objetos. */public classe StudentClone {public static void main (string [] args) lança clonenotsupportEdException {// Crie Student Object Student s = new Student (); s.setName ("qingxia lin"); s.setage (27); clone o objeto do aluno obj = s.clone (); Student S2 = (Student) obj; System.out.println ("------------"); System.out.println (s.getName ()+"----"+s.getage ()); System.out.println (S2.getName ()+"---"+S2.Getage (); s; system.out.println (s3.getName ()+"---"+s3.getage ()); system.out.println ("--------------"); // de fato, existem diferenças s3.PrintName ("liu yi"); s3.Setage (30); System.out.println (S.Getname "); -"+s.getage ()); System.out.println (s2.getName ()+" --- "+s2.getage ()); System.out.println (s3.getName ()+" --- "+s3.getage ()); s2.setName ("Clone mudou nome "); s2.setage (66); system.out.println (s.getName ()+" --- "+s.getage ()); system.out.println (s2.getName ()+" --- "+s2.ge tage ()); system.out.println (s3.getName ()+"---"+s3.getage ()); system.out.println (s3.getName ()+"---"+s3.getage ()); // in Outras palavras, atribua a referência de um objeto a uma referência. Quando a referência é enviada a algo, o objeto apontado pela mesma referência mudará, mas o objeto clonado não será alterado. // Altere algumas de suas propriedades para o objeto clonado, não afetará a mudança do valor de outros objetos}}O exposto acima é todo o conteúdo que o editor lhe traz sobre a diferença entre clonagem Close () e referência de atribuição em Java. Espero que seja útil para todos e apoie mais wulin.com ~