DeepCopy

benxhamin

Neues Mitglied
Hallo, ich hoffe es kann mir einer Helfen.Es geht um clone() ich weis nicht wie man das bei dieser aufgabenstellung anwendet.


  1. Sorgen Sie dafür, dass alle Tiere das Interface Cloneable implementieren.
  2. Java:
    public abstract class Tier implements Cloneable{
    
        @Override
        public Tier clone()  {
            Tier klon = null;
            try {
                klon=(Tier) super.clone();
            } catch (CloneNotSupportedException e) {
                // TODO Auto-generated catch block
                e.printStackTrace();
            }
            return klon;
        }
        
        // Instanzvariablen
        String bezeichnung;
        String name;
        Boolean zahm;

    Sorgen Sie dafür, dass Ihre Artenvielfalt die Schnittstelle Cloneable implementiert. Stellen

    sie sicher, dass Ihr Code eine DeepCopy, auch tiefe Kopie genannt, erstellt.
    Java:
    public class Artenvielfalt implements Cloneable{
        
        @Override
        protected Artenvielfalt clone() {
            Artenvielfalt klon= null;
        try {
            klon= (Artenvielfalt) super.clone();
        } catch (CloneNotSupportedException e) {
            // TODO Auto-generated catch block
            e.printStackTrace();
        }
        return klon;
        }
        
        
        BiologischeOrdnung<Saeugetier> saeugetiere = new BiologischeOrdnung<Saeugetier>();
        BiologischeOrdnung<Fleischfresser> fleischfresser = new BiologischeOrdnung<Fleischfresser>();
        
        
        public Artenvielfalt(){
            
        }
    
    
        public BiologischeOrdnung<Saeugetier> getSaeugetiere() {
            return saeugetiere;
        }
    
    
        public void setSaeugetiere(BiologischeOrdnung<Saeugetier> saeugetiere) {
            this.saeugetiere = saeugetiere;
        }
    
    
        public BiologischeOrdnung<Fleischfresser> getFleischfresser() {
            return fleischfresser;
        }
    
    
        public void setFleischfresser(BiologischeOrdnung<Fleischfresser> fleischfresser) {
            this.fleischfresser = fleischfresser;
        }
Java:
public class BiologischeOrdnung<E> extends ArrayList<E> {

}

Bemerkung: Beachten Sie, dass Fleischfresser auch Tiere sind. Tiere wiederum sind Cloneable.

das sind meine restlichen Klassen
Java:
public interface Fleischfresser {

}

Java:
public abstract class Saeugetier extends Tier {

}

Java:
public class Loewe extends Saeugetier implements Fleischfresser{
    
    
}
Java:
public class Giraffe extends Saeugetier{

Java:
public class Geier extends Tier implements Fleischfresser{
}
 
Zuletzt bearbeitet:

Neue Themen


Oben