E
elduderado_
Gast
Moin,
ich hab eine abstract class shape, von der erben z.B. Quadrangle. Ich möchte, dass in shape ein Array konstruiert wird, der noch keine feste Größe hat. Dann möchte ich mit Quadrangle 4 Punkte einlesen (Point2D definiert durch punkt x,y - gibt dafür bereits eine klasse, die funktioniert) und das dann irgendwie in ein Array umwandelt und an shape mit super() schickt.... geht das ? hier mein code:
Ich hab keine Ahnung wie der Konstruktor aussehen soll... hab schon einiges Probiert, klappt alles net.
Wichtig ist mir einfach nur, dass ich irgendwie den Konstruktor hin bekomme... und mal ein Objekt Quadrangle erstellen kann ^^
Vielen Dank im Vorraus!
Micha
ich hab eine abstract class shape, von der erben z.B. Quadrangle. Ich möchte, dass in shape ein Array konstruiert wird, der noch keine feste Größe hat. Dann möchte ich mit Quadrangle 4 Punkte einlesen (Point2D definiert durch punkt x,y - gibt dafür bereits eine klasse, die funktioniert) und das dann irgendwie in ein Array umwandelt und an shape mit super() schickt.... geht das ? hier mein code:
Code:
abstract class Shape {
Point2D[] points;
public Shape(Point2D[] A){
points = A;
}
public String toString(){
return new String( java.util.Arrays.toString( points ));
}
//public String toString(){
//}
public void moveall(Vector2D a){
for (int i=0; i<this.points.length; i++) {
this.points[i].x += a.x;
this.points[i].y += a.y;
}
}
}
Ich hab keine Ahnung wie der Konstruktor aussehen soll... hab schon einiges Probiert, klappt alles net.
Code:
public class Quadrangle extends Shape {
public Quadrangle(Point2D e, Point2D f, Point2D g, Point2D h){
//points = new Point2D[]{e,f,g,h};
//Point2D[] B = {e,f,g,h};
super(e,f,g,h);
}
}
Code:
public class Point2D extends Object2D{
public Point2D(double dx, double dy){
super(dx,dy);
}
public String toString(){
return new String("Der Punkt hat die Werte [" +this.x+ "|" +this.y+ "]");
}
public void move(Vector2D a){ // Verschiebung des Punktes um den Vektor a aus aktuellen Punktkoordinaten
this.x += a.x;
this.y += a.y;
}
public Point2D copy(){
return new Point2D(this.x,this.y);
}
public Vector2D transVec(Point2D a){ //Verschiebungsvektor 2er Punkte
return new Vector2D(a.x-this.x,a.y-this.y);
}
public double distance(Point2D b){ //Abstand 2er Punkte
return (this.transVec(b)).length();
}
}
Wichtig ist mir einfach nur, dass ich irgendwie den Konstruktor hin bekomme... und mal ein Objekt Quadrangle erstellen kann ^^
Vielen Dank im Vorraus!
Micha