Ciao Ragazzi sono nuova di questo forum, ho un problema con il richiamo di costruttori all'interno della classe stessa. Vi spiego meglio.
Devo fare un esercizio che comprende le seguenti classi:
poi ho la classe Rettangolo2:codice:public class Punto { // CAMPI private int x; // ascissa del punto private int y; // ordinata del punto // COSTRUTTORI public Punto(int x, int y){ this.x = x; this.y = y; } //METODI VARI ....... }
e poi la terza classe Quadrato2codice:public class Rettangolo2 { // CAMPI private Punto p1; // punto P1 (vertice in basso a sinistra) private Punto p2; // punto P2 (vertice in alto a destra) private int base; // misura della base private int altezza; // misura dell'altezza // COSTRUTTORI public Rettangolo2(Punto puntoA, Punto puntoB){ this.p1 = puntoA.minXminY(puntoB); this.p2 = puntoB.maxXmaxY(puntoA); } public Rettangolo2(int xA, int yA, int xB, int yB){ this(new Punto(xA,yA),new Punto(xB,yB)); } // METODI public String toString() { String s = "((" + p1.getX() + "," + p1.getY() + "), " + "(" + p2.getX() + "," + p2.getY() + ")"; return s; } public int getBase() { this.base = (p2.getX()-p1.getX()); return this.base; } public int getAltezza() { this.altezza = (p2.getY()-p1.getY()); return this.altezza; } /** * Restituisce i vertici del rettangolo ordinati in senso orario a partire da P1. * @return Restituisce un array contenente i vertici del rettangolo che esegue * il metodo, ordinati in senso orario a partire da P1. */ public Punto[] getVertici(){ Punto[] array = new Punto[4]; Punto p = new Punto(0,0); if(p1.minXminY(p2) != null) array[0] = new Punto(p1.getX(),p2.getY()); if(p1.minXmaxY(p2) != null) array[1] = new Punto(p1.getX(),p2.getY()); if(p1.maxXmaxY(p2) != null) array[2] = new Punto(p1.getX(),p2.getY()); if(p1.maxXminY(p2) != null) array[3] = new Punto(p1.getX(),p2.getY()); return array; } // METODI VARI }
codice:public class Quadrato2 extends Rettangolo2 { // CAMPI private int lato; // misura della base // COSTRUTTORI /*** Costruisce il quadrato in cui il vartice in basso a sinistra è <code>(x,y)</code> e la misura del lato è <code>lato</code> (si assume <code>lato </code> > 0). */ public Quadrato2(int x, int y, int lato){ // chiamare correttamente il costruttore della superclasse (Rettangolo) super(x,y,,); this.lato = lato; } /*** Costruisce il quadrato in cui il vartice in basso a sinistra è <code>p</code> e la misura del lato è <code>lato</code> (si assume <code>lato </code> > 0). */ public Quadrato2(Punto p, int lato){ // chiamare correttamente il costruttore precedente this(1,1,lato); } // METODI }

Rispondi quotando