vendredi 29 mai 2015
Vererbungsaufgabe
Posted on 10:44 by verona
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!
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 Code:
-
package klassen;
-
-
public interface Figuren {
-
-
public void verschiebenGeometrischerFiguren(double x, double y);
-
-
}
-
-
package klassen;
-
-
public abstract class FarbigeGeometrischeObjekte {
-
-
private Punkt position;
-
-
return farbe;
-
}
-
-
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
-
-
}
-
-
@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;
-
-
-
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
-
-
-
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;
-
-
-
super(farbe,position);
-
}
-
-
}
-
-
package klassen;
-
-
-
private double seitenLaengeA;
-
-
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;
-
-
-
private double seitenLaengeA;
-
private double seitenLaengeB;
-
-
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);
-
}
-
-
}
Vererbungsaufgabe
Categories: Vererbungsaufgabe
Inscription à :
Publier les commentaires (Atom)
0 commentaires:
Enregistrer un commentaire