Kindklassen sollen Ihre Methoden selbst implementieren

flauschig

Mitglied
Hallo,
ich habe eine Problem wegen der Vererbung. Stichwort: Template-Methode.
Es geht um die Vererbung mit 2D-Objekt.
Ich soll Objekt als Oberklasse von z.B. Kreis oder Polygon aber ohne lnstanzvariablen und mit
Template-Methode gibInfo() realisieren.
lstanzvariablen sind aber nicht erlaubt und die Ausgabe sollte dreizeilig erscheinen!
Ein Beispiel der Ausgabe:
Kreis <- die Gruppe halt. Kann auch Polygon sein.
Breite 3
Höhe 4

Folgenden Code habe ich und ich muss dann die gibInfo() ausfüllen. Ich weis aber leider nicht wie:
Java:
public abstract class 2DObjekt {

    abstract String gibTyp();
    abstract int gibBreite();
    abstract int gibHoehe();
 
    public String gibInfo() {
    
        ???
            
    }
}
Was mir dazu einfällt ist, dass
Java:
gibTyp() + "\n" + "Breite" + gibBreite() + "\n" + "Höhe" + gibHoehe();
auftauchen muss.
Das "\n" ist dazu da, um es dreizeilig zu erscheinen lassen in der Ausgabe.
Kann mir jemand helfen, dass zu realisieren und erklären? Bin da leider Anfänger. Das wäre nett. Danke.
Grüße :)
 
Zuletzt bearbeitet:

flauschig

Mitglied
Java:
public abstract class 2DObjekt {

    abstract String gibTyp();
    abstract int gibBreite();
    abstract int gibHoehe();
 
    public String gibInfo() {
        return gibTyp() + "\n" + "Breite" + gibBreite() + "\n" + "Höhe" + gibHoehe();   
    }
}

Danke für den Hinweis. Wäre das dann so richtig?
Ich muss das Ganze ja noch irgendwie ausgeben können. Weis grad nicht wie.
 
X

Xyz1

Gast
Java:
/**
 * 
 * @author D.W. at J.F.o.
 */
public abstract class A2DObjekt {
    abstract String gibTyp();

    abstract int gibBreite();

    abstract int gibHoehe();

    @Override
    public String toString() {
        return gibTyp() + " : " + gibBreite() + " x " + gibHoehe();
    }

    public static void main(String[] args) {
        System.out.println(new Dreieck(5, 6, 7)); // etwa : 5.879 zu a
    }
}

class Dreieck extends A2DObjekt {
    private int a2, b2, c2;

    Dreieck(int a, int b, int c) { // "sollte" public sein
        a2 = a;
        b2 = b;
        c2 = c;
    }

    @Override
    String gibTyp() {
        return this.getClass().getName();
    }

    @Override
    int gibBreite() {
        return Math.max(a2, Math.max(b2, c2));
    }

    @Override
    int gibHoehe() {
        return (int) Math.round((2.0 / a2) * Math.sqrt((0.5) * (a2 + b2 + c2) * ((0.5) * (a2 + b2 + c2) - a2) * ((0.5) * (a2 + b2 + c2) - b2) * ((0.5) * (a2 + b2 + c2) - c2)));
    }
}
 
Ähnliche Java Themen
  Titel Forum Antworten Datum
W Zwei Programme sollen auf eine Klasse zugreifen Java Basics - Anfänger-Themen 18
V Schleife für das Einlesen von Werten für int Variablen, die Bestandteil von Arrays sein sollen Java Basics - Anfänger-Themen 16
N while Schleife wird nicht beendet, obwohl Sie hätte breaken sollen Java Basics - Anfänger-Themen 4
A Harshad Zahlen sollen in einem Intervall ausgegeben werden Java Basics - Anfänger-Themen 8
U Best Practice Buttons sollen ÜBER Labeln liegen, also quasi im Vordergrund. WIE? Java Basics - Anfänger-Themen 4
W Buttons sollen bei Mausklick einen String schreiben Java Basics - Anfänger-Themen 11
J Markierte Einträge (Dateien) in JList sollen in einen anderen Ordner verschoben werden. Java Basics - Anfänger-Themen 12
M Klassen sollen nicht instanzierbar sein Java Basics - Anfänger-Themen 6
A Mehrere Gegner sollen das gleiche Bild benutzen Java Basics - Anfänger-Themen 3
K mehrer applets sollen sich gegenseitig verständigen können Java Basics - Anfänger-Themen 3
F Input/Output Textzeilen in txt-Datei nebeneinander sollen untereinander Java Basics - Anfänger-Themen 5
M Zwei Panels, die sich gegenseitig 'notifyn' sollen Java Basics - Anfänger-Themen 12
A Konstruktoren sollen sich gegenseitig aufrufen Java Basics - Anfänger-Themen 10
L Gelöst: Negative Eingaben sollen verweigert werden Java Basics - Anfänger-Themen 3
H Ausgabe in Dos-Box - wo sollen da Exceptions auftreten? Java Basics - Anfänger-Themen 6
G Toolbar buttons sollen dialoge anzeigne statt pop up Java Basics - Anfänger-Themen 44
D Menü soll immer da bleiben - Frames sollen wechseln Java Basics - Anfänger-Themen 3
G Markierte Buchstaben sollen formatiert werden Java Basics - Anfänger-Themen 5
G Methoden in Menüleiste sollen auf Frame reagieren Java Basics - Anfänger-Themen 4
D Ampel Programmieren die jede 10 sekunden ihre farbe wechselt Java Basics - Anfänger-Themen 6
M Wie kann ich eine Methode aus einem Interface in eine Klasse implementieren, so dass sie ihre Funktion ausführt? Java Basics - Anfänger-Themen 7
T Methoden und ihre Eigenschaften Java Basics - Anfänger-Themen 5
M Entwurfsmuster und ihre Gemeinsamkeiten Java Basics - Anfänger-Themen 5
S Datentypen und ihre Größe Java Basics - Anfänger-Themen 21
T OOP Abstrakte Klassen und ihre Kinder: wie läuft das? Java Basics - Anfänger-Themen 3
J Wrapperklasse und ihre Umwandlung Java Basics - Anfänger-Themen 2
U Interfaces und ihre Daseinsberechtigung Java Basics - Anfänger-Themen 4
B 2D Punkte erstellen und ihre Länge berechnen/Problem this. Java Basics - Anfänger-Themen 3
D Objekten ihre Eigenschaften zuweisen Java Basics - Anfänger-Themen 3

Ähnliche Java Themen

Neue Themen


Oben