# Quader



## babuschka (17. Jan 2010)

Hallo ich habe drei Klassen gemacht und die dritte soll einen Quader erstellen: dabei hab ich noch Probelme und bei Klasse 3D krieg ich immer Fehlermedlungen wegen dem super. dieser super- Verweis müsste doch eigentlich stimmen, oder? oder was mach ich da falsch? Was mach ich da falsch mit der Anweisung super? 
	
	
	
	





```

```

Kann mir vielleicht jemand noch einen Tipp geben wie ich aus den beiden klassen punkt2d und punk3d jetzt noch sinnvoll einen Quader erstelle? Tipp? Idee? 


```
private double yKoordinate;



public Punkt2D(double x, double y) { //Konstruktor, initialisiert Objekt der Klasse 2DPunkt 

this.xKoordinate = x;

this.yKoordinate = y;

}



public void verschiebe(double x, double y) {

this.xKoordinate += x;

this.yKoordinate += y;

}



public double getXKoordinate() {

return this.xKoordinate;

}



public double getYKoordinate() {

return this.yKoordinate;

}

}
```


```
public class Punkt3D extends Punkt2D { //Objekte der Klasse Punkt3D erben alle Attribute und Methoden der Klasse Punkt2D 
private double zKoordinate; //zusätzliches Attribut in der abgeleiteten Klasse, die anderen werden "geerbt" 

//Konstruktoren werden nicht vererbt! Daher neuer Konstruktor.
public Punkt3D(double x, double y, double z) { //Konstruktor, initialisiert Objekt der Klasse 3DPunkt
super(double x, double y); //Verweis auf die Vaterklassse 
this.zKoordinate = z; 
}

//Überschreiben bzw. Neudefinierung der verschiebe- Methode in der abgeleiteten Klasse 
public void verschiebe(double x, double y, double z) { 
this.xKoordinate+=x; //d.h: xKoordinate=xKoordinate+x; 
this.yKoordinate+=y;
this.z.Koordinate+=z;
} 

//Methoden getXKoordinate und getXKoordinate() werden geerbt
//getter- Methode für Z- Koordinate 
public double getZKoordinate() {
return this.zKoordinate; 
}
}
```


```
public class Quader extends Punkt3D {

private double kantenlaengex;
private double kantenlaengey;
private double kantenlaengez; 

Punkt3D Quader = new Punkt3D(); //Objekt der Klasse Punkt3D erzeugen, das heißt 3D-Punkt erzeugen 

public Quader(double x, double y, double z) { //Konstruktor, initialisiert Objekt der Klasse Quader 

this.kantenlaengex = x;

this.kantenlaengey = y;
this.kantenlaengez = z; 
}
```

Irgenwer eine Idee? Vielen vielen Dank!


----------



## nickname (17. Jan 2010)

Hi,

du erzeugst ein Object 
	
	
	
	





```
Punkt3D Quader = new Punkt3D();
```
aber deine klasse besitzt nur diesen Konstruktor 
	
	
	
	





```
public Punkt3D(double x, double y, double z)
```
Du hast damit deinen Default konstruktor überschrieben

Versuch mal
	
	
	
	





```
Punkt3D Quader = new Punkt3D(2.3 , 323.4, 23.3);
```
(Zahlen sind nur Beispiele!)

gruß nickname


----------



## JanHH (18. Jan 2010)

Was ist denn ein "sinnvoller Quader"? Was willst Du überhaupt machen?


----------



## Noctarius (18. Jan 2010)

@ursprünglichen Themeneröffner:
Lass bitte solche Aktionen mit Text löschen. Das zieht den gesamten Kontext des Threads auseinander und später kann ihn keiner mehr nachvollziehen. Wenn, dann wäre komplettes Löschen des Threads sinnvoller. Sowas hier bringt keinem mehr was.


----------



## L-ectron-X (18. Jan 2010)

Ich schreibe dem TO noch eine PN dazu.


----------

