# Vererbungsaufgabe



## Holy_Moley (29. Mai 2015)

Hallo zusammen,

Ich sitze gerade an meinem Übungsblatt und kommen einfach nicht weiter.

Meine Frage ist könnt ihr euch das mal durchschauen also  Aufgaben 3 bis 5.

Ich versteh nicht ganz wie ich das mit der Klasse Punkt machen soll, als interface oder vlt durch Aggregation?

Oder Punkt in die superklasse farbigeGeometrischeObjekte aggregierre? Dann hätten Ja alle klassen die Erben den Mittelpunkt oder?

Vielen Dank im vorraus für eure HIlfe!

[JAVA]package klassen;

public interface Figuren {

    public void verschiebenGeometrischerFiguren(double x, double y);

}

package klassen;

public abstract class FarbigeGeometrischeObjekte {

    private String farbe;
    private Punkt position;

    public String getFarbe(){
        return farbe;
    }

    public FarbigeGeometrischeObjekte (String color, Punkt position){
        this.farbe = color;
        this.position = position;
    }

    public abstract double berechneUmfang();

    public Punkt getPosition() {
        return position;
    }

    public void setPosition(Punkt position) {
        this.position = position;
    }


}

package klassen;

/**
 * Definiert eine Klasse Punkt in einem zweidimensionalen karthesischen Koordinatensystem.
 * Ein Punkt wird jeweils durch eine X und eine Y Koordinate beschrieben.
 * Die Koordinaten werden hierbei in Gleitkommazahlen dargestellt.
 * 
 * @author
 * @version 1.0
 * @since 11.04.2015
 * 
 */


public class Punkt implements Figuren {

    private double xKoordinate;
    private double yKoordinate;

    public Punkt(double x, double y){

        xKoordinate = x;
        yKoordinate = y;
    }

    public double getXKoordinate(){

        return xKoordinate;
    }

    public void setXKoordinate(double x){

        xKoordinate = x;
    }


    public double getYKoordinate() {

        return yKoordinate;
    }

    public void setYKoordinate(double y) {

        yKoordinate = y;
    }

/**
 * 
 * Gibt die Attribute eines Punktobjekts formatiert als einen String zurück.
 * Sprich die X-Koordinate und die Y-Koordinate.
 *     
 *@return einen formatierten String
 */
    @Override
    public String toString(){

        return String.format("(%.2f | %.2f)", xKoordinate, yKoordinate);
    }

    @Override
    public void verschiebenGeometrischerFiguren(double x, double y) {
        xKoordinate = xKoordinate + x;
        yKoordinate = yKoordinate + y;
    }    
}

package klassen;

/**
 * Beschreibt einen Kreis mit drei Eigenschaften: Position, Radius und der Farbe.
 * Der Kreis kann verschoben werden uns sein Umfang wird errechnet.
 *  
 * @author 
 * @version 1.0
 * @since 11.04.2015
 * 
 */

public class Kreis extends FarbigeGeometrischeObjekte implements Figuren {

    //private Punkt position;
    private double radius;
    //private String farbe;

    private static double KREISZAHL = 3.141592653;


    public Kreis(String farbe,Punkt position, double rad){
          super(farbe,position);
        //  this.position = position;
          this.radius = rad;
    }


/**
 *  
 * Es werden eine X und eine Y-Koordinate übergegen, um welche sich dann der Mittelpunkt(Position) des 
 * Kreises verschiebt.
 * 
 * @param x ist ein Übergabeparameter, Verschiebung in der X-Achse
 * @param y ist ein Übergabeparameter, Verschiebung in der Y-Achse
 * @return nichts
 */

    @Override
    public void verschiebenGeometrischerFiguren(double x, double y) {

    getPosition().setXKoordinate(getPosition().getXKoordinate () + x);
    getPosition().setYKoordinate(getPosition().getYKoordinate () + y);

    }

/**
 *  
 * Berechnet den Umfang des Kreises nach folgender Formel:
 * Umfang = 2.0 * KREISZAHL * radius 
 *     
 * @return den Umfang des Kreises
 */
    @Override
    public double berechneUmfang() {
        return 2.0 * KREISZAHL * radius;
    }

/**
 * 
 * Gibt die Argumente des Kreisobjekts formatiert als einen String wieder.
 * Die Argumente sind: Position, Radius, Farbe und der Umfang.
 *
 * @return einen formatierten String
 */

    @Override 

    public String toString(){

            return String.format("Mittelpunkt: %1$s; Radius: %2$.4f; Farbe: %3$s; Umfang: %4$.4f", getPosition().toString (), radius, getFarbe(), berechneUmfang());
        }

/**
 * 
 * Mehrere Objekte werden erzeugt und ihre ihnen schon bekannten Methoden werden aufgerufen.
 * 
 * @return nichts
 */
//    public static void main(String[] args) {
//        
//        Punkt p1 = new Punkt(2.0,5.0);
//        Kreis k1 = new Kreis("rot",p1,10.0);
//        
//        System.out.println("p1: " + p1.toString());
//        
//        System.out.println("\nk1: " + k1.toString());
//        
//        k1.verschiebenGeometrischerFiguren(20.0, 20.0);
//        
//        System.out.println("\nNach der Verschiebung: \n\nk1: " + k1.toString());
//        
//    }

}

package klassen;

public abstract class Polygon extends FarbigeGeometrischeObjekte {

    public Polygon(String farbe,Punkt position) {
        super(farbe,position);
    }    

}

package klassen;

public class Quadrat extends Polygon implements Figuren {

    private double seitenLaengeA;

    public Quadrat(String farbe, Punkt position,double a) {
        super(farbe, position);
        this.seitenLaengeA = a;
    }

    public double berechneUmfang(){
        return 4.0 * seitenLaengeA;
    }

    @Override
    public void verschiebenGeometrischerFiguren(double x, double y) {
        getPosition().setXKoordinate(getPosition().getXKoordinate () + x);
        getPosition().setYKoordinate(getPosition().getYKoordinate () + y);

    }

}

package klassen;

public class Rechteck extends Polygon implements Figuren {

    private double seitenLaengeA;
    private double seitenLaengeB;

    public Rechteck(String farbe, Punkt position, double a, double b){
        super(farbe,position);
        this.seitenLaengeA = a;
        this.seitenLaengeB = b;
    }

    @Override
    public double berechneUmfang() {
        return 2.0 * (seitenLaengeA + seitenLaengeB);
    }

    @Override
    public void verschiebenGeometrischerFiguren(double x, double y) {
        getPosition().setXKoordinate(getPosition().getXKoordinate () + x);
        getPosition().setYKoordinate(getPosition().getYKoordinate () + y);
    }

}



[/code]


----------



## strußi (29. Mai 2015)

A3: eine klasse pulic interface Interfacename die eine methode braucht, welche ein grafikobjekt verschiebt xalt ->xneu und yalt -> yneu

Aufgabe 3 – Interface
Definieren Sie ein Java-interface mit einer Methode zum „verschieben“
geometrischer Objekte. Das Einbinden des Interfaces im Rahmen einer
Klassendefinition soll die Implementierung der Methode erzwingen. Das Interface
könnte entsprechend in der Klasse Kreis aus Workshop 1 eingebunden werden.

A4: public abstract class GraphicObject {} mehr infos fehlen (ws1)

Aufgabe 4 – abstrakte Klasse
Erstellen Sie eine abstrakte Superklasse für farbige geometrische Objekte, die eine
Fläche umschließen und damit einen Umfang haben. Die abstrakten Methoden
entsprechen dabei denen des Kreises aus dem Workshop 1 (Ausnahme ist die
„Verschieben“-Methode definiert durch das Interface aus Aufgabe 3).
Entscheiden Sie dabei, welche Methoden abstrakt sein sollten und welche bereits
innerhalb der abstrakten Klasse implementiert werden können.

A5: klassen aus liste mit extends und implements fertig

Aufgabe 5 – Klassenhierarchie
Bauen Sie mit Hilfe der Schnittstelle aus Aufgabe 3 und der abstrakten Klasse aus
Aufgabe 4 einen Vererbungsbaum auf. In dieser Klassenhierarchie sollen folgende
abgeleitete Klassen definiert werden.

Punkt
Kreis
Polygon
Rechteck
Quadrat

Überschreiben Sie für jede Klasse die Methode toString(), welche von der Klasse
java.lang.Objekt geerbt wird.


----------



## Holy_Moley (29. Mai 2015)

tut mir leid, aber ich komm überhaupt nicht mit, kannst du die Punkte mal genauer erläutern z.B beim Interface, was ich da falsch gemacht habe?


----------



## strußi (29. Mai 2015)

dein interface passt doch, es soll dich nur dazu bringen/zwingen, wenn du es einbindest, eine Methode zu implementieren, die deine Geometrie verschiebt.


----------



## Holy_Moley (29. Mai 2015)

okay danke und sonst? wo haperts noch? bin leider noch ein totaler Anfänger von daher sorry ich programmier erst seit en paar wochen in java...

Das ist jetzt mein letzter Stand, passt das soweit?


```
package klassen;

public interface Figuren {
    
    public void verschiebenGeometrischerFiguren(double x, double y);

}

package klassen;

public abstract class FarbigeGeometrischeObjekte {
    
    private String farbe;
    private Punkt position;
    
    public String getFarbe(){
        return farbe;
    }
    
    public FarbigeGeometrischeObjekte (String color, Punkt position){
        this.farbe = color;
        this.position = position;
    }
    
    public abstract double berechneUmfang();

    public Punkt getPosition() {
        return position;
    }

    public void setPosition(Punkt position) {
        this.position = position;
    }
    

}

package klassen;

/**
 * Definiert eine Klasse Punkt in einem zweidimensionalen karthesischen Koordinatensystem.
 * Ein Punkt wird jeweils durch eine X und eine Y Koordinate beschrieben.
 * Die Koordinaten werden hierbei in Gleitkommazahlen dargestellt.
 * 
 * @author
 * @version 1.0
 * @since 11.04.2015
 * 
 */


public class Punkt implements Figuren {
    
    private double xKoordinate;
    private double yKoordinate;
    
    public Punkt(double x, double y){
        this.xKoordinate = x;
        this.yKoordinate = y;
    }
    
    public double getXKoordinate(){
        return xKoordinate;
    }
    
    public void setXKoordinate(double x){
        xKoordinate = x;
    }


    public double getYKoordinate() {
        return yKoordinate;
    }

    public void setYKoordinate(double y) {
        yKoordinate = y;
    }
    
/**
 * 
 * Gibt die Attribute eines Punktobjekts formatiert als einen String zurück.
 * Sprich die X-Koordinate und die Y-Koordinate.
 *     
 *@return einen formatierten String
 */
    @Override
    
    public String toString(){
        return String.format("(%.2f | %.2f)", xKoordinate, yKoordinate);
    }

    @Override
    
    public void verschiebenGeometrischerFiguren(double x, double y) {
        xKoordinate = xKoordinate + x;
        yKoordinate = yKoordinate + y;
    }    
}

package klassen;

/**
 * Beschreibt einen Kreis mit drei Eigenschaften: Position, Radius und der Farbe.
 * Der Kreis kann verschoben werden uns sein Umfang wird errechnet.
 *  
 * @author 
 * @version 1.0
 * @since 11.04.2015
 * 
 */

public class Kreis extends FarbigeGeometrischeObjekte implements Figuren {

    //private Punkt position;
    private double radius;
    //private String farbe;
    
    private static double KREISZAHL = 3.141592653;
    
        
    public Kreis(String farbe,Punkt position, double rad){
          super(farbe,position);
        //  this.position = position;
          this.radius = rad;
    }
    

/**
 *  
 * Es werden eine X und eine Y-Koordinate übergegen, um welche sich dann der Mittelpunkt(Position) des 
 * Kreises verschiebt.
 * 
 * @param x ist ein Übergabeparameter, Verschiebung in der X-Achse
 * @param y ist ein Übergabeparameter, Verschiebung in der Y-Achse
 * @return nichts
 */

    @Override
    
    public void verschiebenGeometrischerFiguren(double x, double y) {
    getPosition().setXKoordinate(getPosition().getXKoordinate () + x);
    getPosition().setYKoordinate(getPosition().getYKoordinate () + y);
    }
    
/**
 *  
 * Berechnet den Umfang des Kreises nach folgender Formel:
 * Umfang = 2.0 * KREISZAHL * radius 
 *     
 * @return den Umfang des Kreises
 */
    @Override
    
    public double berechneUmfang() {
        return 2.0 * KREISZAHL * radius;
    }
    
/**
 * 
 * Gibt die Argumente des Kreisobjekts formatiert als einen String wieder.
 * Die Argumente sind: Position, Radius, Farbe und der Umfang.
 *
 * @return einen formatierten String
 */
    
    @Override 
            
    public String toString(){
            return String.format("Mittelpunkt: %1$s; Radius: %2$.4f; Farbe: %3$s; Umfang: %4$.4f", getPosition().toString (), radius, getFarbe(), berechneUmfang());
    }
        
}

package klassen;

public abstract class Polygon extends FarbigeGeometrischeObjekte {

    public Polygon(String farbe,Punkt position) {
        super(farbe,position);
    }    
    
}

package klassen;

public class Quadrat extends Polygon implements Figuren {

    private double seitenLaengeA;
    
    public Quadrat(String farbe, Punkt position,double a) {
        super(farbe, position);
        this.seitenLaengeA = a;
    }
    
    public double berechneUmfang(){
        return 4.0 * seitenLaengeA;
    }

    @Override
    
    public void verschiebenGeometrischerFiguren(double x, double y) {
        getPosition().setXKoordinate(getPosition().getXKoordinate () + x);
        getPosition().setYKoordinate(getPosition().getYKoordinate () + y);
        
    }
    
    @Override
    
    public String toString(){
    return String.format("Mittelpunkt: %s; Farbe: %s; Umfang: %.4f; Seitenlaeng a: %f;",
             getPosition().toString (), getFarbe(), berechneUmfang(), seitenLaengeA);
    }
}

package klassen;

public class Rechteck extends Polygon implements Figuren {
    
    private double seitenLaengeA;
    private double seitenLaengeB;
    
    public Rechteck(String farbe, Punkt position, double a, double b){
        super(farbe,position);
        this.seitenLaengeA = a;
        this.seitenLaengeB = b;
    }

    @Override
    
    public double berechneUmfang() {
        return 2.0 * (seitenLaengeA + seitenLaengeB);
    }

    @Override
    
    public void verschiebenGeometrischerFiguren(double x, double y) {
        getPosition().setXKoordinate(getPosition().getXKoordinate () + x);
        getPosition().setYKoordinate(getPosition().getYKoordinate () + y);
    }
    
    @Override
    
    public String toString(){
         return String.format("Mittelpunkt: %s; Farbe: %s; Umfang: %.4f; Seitenlaeng a: %f; Setenlaenge b: %f; ",
                 getPosition().toString (), getFarbe(), berechneUmfang(), seitenLaengeA, seitenLaengeA );
    }

}
```


----------



## strußi (29. Mai 2015)

in deiner abstract gibt es die möglichkeit die Farbe( eng. Color) als java.awt.Color; zu importieren, dann kannst du damit besser arbeiten als mit einem String. du bekommst als ausgabe die rgb werte und keinen namen, aber das ist nicht schlimm.

in class Kreis
kannst du deine Kreiszahl noch final machen und von Math.PI; holen

hab jetzt auch nicht mehr die zeit und die lust alles durchzulesen, weil alle klassen in einer einblendung sind :noe:


----------



## Holy_Moley (29. Mai 2015)

mhm, danke schonmal. Kannst du mir bei Aufgabe 6 weiterhelfen, krieg das nicht geregelt. Bzw was da verlangt wird.

So jetzt alles separiert nochmal...


```
package klassen;

/**
 *Definiert ein Interface mit einer verschiebeGeometrischerFiguren Methode
 * 
 * @author
 * @version 1.0
 * @since 28.05.2015
 * 
 */

public interface Figuren {
    
/**     
 * Es werden eine X und eine Y-Koordinate übergegen, um welche sich dann der Mittelpunkt(Position)
 *  verschiebt.
 *  
 * @param x ist ein Übergabeparameter, Verschiebung in der X-Achse    
 * @param y ist ein Übergabeparameter, Verschiebung in der Y-Achse
 * @return nichts
*/
    
    public void verschiebenGeometrischerFiguren(double x, double y);

}
```


```
package klassen;

/**
 * Definiert eine Klasse Punkt in einem zweidimensionalen karthesischen Koordinatensystem.
 * Ein Punkt wird jeweils durch eine X und eine Y Koordinate beschrieben.
 * Die Koordinaten werden hierbei in Gleitkommazahlen dargestellt.
 * 
 * @author
 * @version 1.0
 * @since 28.05.2015
 * 
 */


public class Punkt implements Figuren {
    
    private double xKoordinate;
    private double yKoordinate;
    
    public Punkt(double x, double y){
        this.xKoordinate = x;
        this.yKoordinate = y;
    }
    
    public double getXKoordinate(){
        return xKoordinate;
    }
    
    public void setXKoordinate(double x){
        xKoordinate = x;
    }


    public double getYKoordinate() {
        return yKoordinate;
    }

    public void setYKoordinate(double y) {
        yKoordinate = y;
    }
    
/**
 * 
 * Gibt die Attribute eines Punktobjekts formatiert als einen String zurück.
 * Sprich die X-Koordinate und die Y-Koordinate.
 *     
 *@return einen formatierten String
 */
    @Override
    
    public String toString(){
        return String.format("(%.2f | %.2f)", xKoordinate, yKoordinate);
    }

    @Override
    
    public void verschiebenGeometrischerFiguren(double x, double y) {
        xKoordinate = xKoordinate + x;
        yKoordinate = yKoordinate + y;
    }    
}
```


```
package klassen;

/**
 * Beschreibt einen Kreis mit drei Eigenschaften: Position, Radius und der Farbe.
 * Der Kreis kann verschoben werden uns sein Umfang wird errechnet.
 *  
 * @author 
 * @version 1.0
 * @since 28.05.2015
 * 
 */

public class Kreis extends FarbigeGeometrischeObjekte implements Figuren {

    //private Punkt position;
    private double radius;
    //private String farbe;
    
    private static double KREISZAHL = 3.141592653;
    
        
    public Kreis(String farbe,Punkt position, double rad){
          super(farbe,position);
        //  this.position = position;
          this.radius = rad;
    }
    
    @Override
    
    public void verschiebenGeometrischerFiguren(double x, double y) {
    getPosition().setXKoordinate(getPosition().getXKoordinate () + x);
    getPosition().setYKoordinate(getPosition().getYKoordinate () + y);
    }
    

    @Override
    
    public double berechneUmfang() {
        return 2.0 * KREISZAHL * radius;
    }
    
/**
 * 
 * Gibt die Argumente des Kreisobjekts formatiert als einen String wieder.
 * Die Argumente sind: Position, Radius, Farbe und der Umfang.
 *
 * @return einen formatierten String
 */
    
    @Override 
            
    public String toString(){
            return String.format("Mittelpunkt: %1$s; Radius: %2$.4f; Farbe: %3$s; Umfang: %4$.4f", getPosition().toString (), radius, getFarbe(), berechneUmfang());
    }
        
}
```


```
package klassen;

/**
 * Beschreibt eine Superklasse die dazu verwendet wird einen Grundbauplan für diverse geometrische
 * Formen zu liefern 
 * 
 * @author 
 * @version 1.0
 * @since 28.05.2015
 * 
 *
 * 
 */

public abstract class FarbigeGeometrischeObjekte {
    
    private String farbe;
    private Punkt position;
    
    public String getFarbe(){
        return farbe;
    }
    
    public FarbigeGeometrischeObjekte (String color, Punkt position){
        this.farbe = color;
        this.position = position;
    }
    
    /**
     *  
     * Berechnet den Umfang verschiedener geometrischer Formen
     *
     * @return den Umfang
     */
    
    public abstract double berechneUmfang();

    public Punkt getPosition() {
        return position;
    }

    public void setPosition(Punkt position) {
        this.position = position;
    }
    

}
```


```
package klassen;

/**
 * Beschreibt eine Superklasse die dazu verwendet wird einen Grundbauplan für eckige geometrische
 * Formen zu liefern 
 * 
 * @author 
 * @version 1.0
 * @since 28.05.2015
 */

public abstract class Polygon extends FarbigeGeometrischeObjekte {

    public Polygon(String farbe,Punkt position) {
        super(farbe,position);
    }    
    
}
```
[JAVA

```
package klassen;
package klassen;

/**
 * Beschreibt eine Superklasse die dazu verwendet wird einen Grundbauplan für eckige geometrische
 * Formen zu liefern 
 * 
 * @author 
 * @version 1.0
 * @since 28.05.2015
 */

public abstract class Polygon extends FarbigeGeometrischeObjekte {

    public Polygon(String farbe,Punkt position) {
        super(farbe,position);
    }    
    
}
```


```
package klassen;

/**
 * Beschreibt eine Klasse die dazu verwendet Quadrate zu kreiren
 * Diese können verschoben werden und ihr Umfang kann berechnet werden
 * 
 * @author 
 * @version 1.0
 * @since 28.05.2015
 * 
 *
 * 
 */


public class Quadrat extends Polygon implements Figuren {

    private double seitenLaengeA;
    
    public Quadrat(String farbe, Punkt position,double a) {
        super(farbe, position);
        this.seitenLaengeA = a;
    }
    
    public double berechneUmfang(){
        return 4.0 * seitenLaengeA;
    }

    @Override
    
    public void verschiebenGeometrischerFiguren(double x, double y) {
        getPosition().setXKoordinate(getPosition().getXKoordinate () + x);
        getPosition().setYKoordinate(getPosition().getYKoordinate () + y);
        
    }
    
    /**
     * 
     * Gibt die Argumente des Quadratbjekts formatiert als einen String wieder.
     * 
     * @return einen formatierten String
     */
    
    
    @Override
    
    public String toString(){
    return String.format("Mittelpunkt: %s; Farbe: %s; Umfang: %.4f; Seitenlaeng a: %.2f;",
             getPosition().toString (), getFarbe(), berechneUmfang(), seitenLaengeA);
    }
}
```


```
package klassen;

/**
 * Beschreibt eine Klasse die dazu verwendet Rechtecke zu kreiren
 * Diese können verschoben werden und ihr Umfang kann berechnet werden
 * 
 * @author 
 * @version 1.0
 * @since 28.05.2015
 * 
 *
 * 
 */


public class Rechteck extends Polygon implements Figuren {
    
    private double seitenLaengeA;
    private double seitenLaengeB;
    
    public Rechteck(String farbe, Punkt position, double a, double b){
        super(farbe,position);
        this.seitenLaengeA = a;
        this.seitenLaengeB = b;
    }

    @Override
    
    public double berechneUmfang() {
        return 2.0 * (seitenLaengeA + seitenLaengeB);
    }

    @Override
    
    public void verschiebenGeometrischerFiguren(double x, double y) {
        getPosition().setXKoordinate(getPosition().getXKoordinate () + x);
        getPosition().setYKoordinate(getPosition().getYKoordinate () + y);
    }
    
    /**
     * 
     * Gibt die Argumente des rechteckigen Objekts formatiert als einen String wieder.
     * 
     * @return einen formatierten String
     */
    
    @Override
    
    public String toString(){
         return String.format("Mittelpunkt: %s; Farbe: %s; Umfang: %.4f; Seitenlaeng a: %.2f; Setenlaenge b: %.2f; ",
                 getPosition().toString (), getFarbe(), berechneUmfang(), seitenLaengeA, seitenLaengeB );
    }

}
```


```
package klassen;

public class Koordinatensystem {

    /**
     * Die main Methode.
     * 
     * Mehrere Objekte werden erzeugt und ihre ihnen schon bekannten Methoden werden aufgerufen.
     * 
     * @return nichts
     */
    
    public static void main(String[] args) {
        
        //FarbigeGeometrischeObjekte[] fgo = new FarbigeGeometrischeObjekte[4];    
        
        Punkt position = new Punkt(2.0,5.0);
        Kreis k1 = new Kreis("rot",position,10.0);
        Quadrat q1 = new Quadrat("grün",position, 5.0);
        Rechteck r1 = new Rechteck("gelb",position,20.0,4.0);
        
        System.out.println("p1: " + position.toString());
        
        System.out.println("\nk1: " + k1.toString());
        
        k1.verschiebenGeometrischerFiguren(20.0, 20.0);
        
        System.out.println("\nNach der Verschiebung: \n\nk1: " + k1.toString());

        System.out.println("\nq1: " + q1.toString());
        
        q1.verschiebenGeometrischerFiguren(20.0, 20.0);
        System.out.println("\nNach der Verschiebung: \n\nq1: " + q1.toString());

        
        System.out.println("\nr1: " + r1.toString());
        System.out.println("\nNach der Verschiebung: \n\nr1: " + r1.toString());

        
        r1.verschiebenGeometrischerFiguren(20.0, 20.0);
    }

}
```


----------



## strußi (29. Mai 2015)

A6: Array = Datentyp[] name = new Datentyp[ anzahl ]; //für deine *Object*s
int zeilen, spalten =1000;
koordinatensystem = x/y werte => double[][] koordinatensystem =new double[ zeilen][ spalten]; beachte das dein 0/0 nicht unten links sonder oben links ist


Aufgabe 6 – Test / Polymorphie
Definieren Sie die Klasse Koordinatensystem und implementieren Sie in dieser
eine main-Methode zum „Testen“ Ihrer Klassen. Erstellen Sie insbesondere ein Array
aus Elementen vom Typ der abstrakten Klasse aus Aufgabe 4 und füllen Sie dieses
Array mit Instanzen von verschiedenen Klassen aus Aufgabe 5 (Debuggen Sie beim
Instanziieren der verschiedenen Klassen die Konstruktor-Aufrufe und beobachten Sie
dabei deren Verkettung). Iterieren Sie anschließend über das Array und rufen Sie
die Methode toString der Objekte auf (Polymorphie).


----------



## Holy_Moley (8. Jun 2015)

Okay Danke


----------



## Gucky (22. Jun 2015)

Ist jetzt zwar komplett Offtopic aber leere mal deinen Posteingang


----------

