Hi, wir sind gerade am Anfang von Java und haben gerade das Programmieren von Klassen und erstellen von Objekten , sowie dessen Auslesung gelernt.
Nun habe ich folgendes Problem:
Ich habe folgende Main Klasse
meine Coffee - Klasse
und zB eine Klasse "Container"
weiterhin eine ContainerType Klasse
Es geht um ein Kaffeegetränk, welches verschiedene Attribute bekommen soll wie zB Starker/Mittlerer/Schwacher Espresso , Große/mittlere/kleine Tasse/Glas/Becher, Milch , Zucker/Sirup/Süßstoff usw.
Die ersten Aufgaben beinhalten lediglich die Erstellung der Klassen und den Abruf der einzelnen über die Main-Klasse wie zb Abrufen des Containers sowie dessen Ausgabe
Dabei kommen dann Dinge raus wie:
BehälterArt=CUP
BehälterKapazität=SMALL
Preis=1
das funktioniert alles mit den jeweiligen Klassen.
Nun müssen wir eine Coffee Klasse erstellen und über diese, alle Daten des gesamten Kaffe-getränks auslesen.
dh es soll etwas in der Ausgabe stehen wie:
Tasse(mittel), Espresso(schwach),Milch, Zucker
Nun, bei meiner Ausführung gibt er mir in der Konsole folgendes aus:
gewõhlter Behõlter: Container@36a06816
gewõhlte Espresso-Stõrke: Espresso@5d11985e
Milk@2e2a730e
Milk@64e7b3cf
S³▀ungsmittel: Sweetener@27ce0eca
Sweetener@492d0430
Preis des Getrõnks: 1
Preis von einer Portion Milch: 1
Art des Behõlters: CUP
Kapazitõt des Behõlters: MEDIUM
Preis des Behõlters: 1
Art des S³▀ungsmittels: SYRUP
Preis: 1
wobei der untere Teil noch das Auslesen der einfachen Aufgaben war, wie oben beschrieben. Habe ich nur rein um zu sehen obs denn noch klappt.
Kann mir vllt jemand einen Tipp geben , wie ich statt zb
gewählter Behälter: Container@36a06816
-> gewählter Behälter: CUP ( LARGE ) oder etwas wie
gewählter Behälter :
Art : CUP
Kapazität: LARGE
bekomme?
Nun habe ich folgendes Problem:
Ich habe folgende Main Klasse
Java:
/**
*
* Main-Klasse zum Testen der Implementierung.
*
* @author ---
*
*/
public class Main {
/**
* @param args Keine Übergangsvariablen.
*/
public static void main(String[] args){
//Erstellung der Objekte.
Container container1 = new Container(ContainerType.CUP, ContainerCapacity.MEDIUM,1);
Espresso espresso1 = new Espresso(CoffeeType.LIGHT,1);
Milk milk1 = new Milk(1);
Milk milk2 = new Milk(2);
Sweetener sweetener1 = new Sweetener(SweetenerType.SYRUP,1);
Sweetener sweetener2 = new Sweetener(SweetenerType.SUGAR,1);
Coffee coffee1 = new Coffee(
new Container(ContainerType.CUP, ContainerCapacity.MEDIUM,1),
new Espresso(CoffeeType.LIGHT,1),
new Milk(1),
new Milk(2),
new Sweetener(SweetenerType.SYRUP,1),
new Sweetener(SweetenerType.SUGAR,1),
1
);
//Ausgabe
coffee1.printCoffee();
System.out.println("");
milk1.printMilk();
container1.printContainer();
sweetener1.printSweetener();
}
}
meine Coffee - Klasse
Java:
/**
* Representiert das komplette Kaffeegetränk.
* @author ---
*
*/
class Coffee {
//Attribute
/*Kaffee Behälter*/
Container container;
/*verwendeter Espresso*/
Espresso espresso;
/*Portion Milch 1*/
Milk milk_1;
/*Portion Milch 2*/
Milk milk_2;
/*Portion Süßungsmittel 1*/
Sweetener sweetener_1;
/*Portion Süßungsmittel 2.*/
Sweetener sweetener_2;
/*Gesamtpreis des Getränks*/
int price;
//Methoden
/** Konstruktor
*@param c Behälter des Kaffees
*@param e Espressostärke
*@param m1 Milch1
*@param m2 Milch2
*@param s1 Sweetener1
*@param s2 Sweetener2
*@param p Preis
*/
Coffee(Container c, Espresso e, Milk m1, Milk m2, Sweetener s1, Sweetener s2, int p) {
container = c;
espresso = e;
milk_1 = m1;
milk_2 = m2;
sweetener_1 = s1;
sweetener_2 = s2;
price = p;
}
/** Ausgabe der gesamten Daten des Kaffeegetränks. */
void printCoffee() {
System.out.print("gewählter Behälter: ");
System.out.println(container);
System.out.print("gewählte Espresso-Stärke: ");
System.out.println(espresso);
System.out.println(milk_1);
System.out.println(milk_2);
System.out.print("Süßungsmittel: ");
System.out.println(sweetener_1);
System.out.println(sweetener_2);
System.out.print("Preis des Getränks: ");
System.out.println(price);
}
}
und zB eine Klasse "Container"
Java:
/**
*
* Representiert die Klasse: Behälter.
*
* @author ---
*/
class Container {
//Attribute
/** Art des Behälters */
ContainerType type;
/** Kapazität des Behälters */
ContainerCapacity capacity;
/** Preis des Behälters */
int price;
//Methoden
/** Konstruktor für Behälter */
Container(ContainerType t , ContainerCapacity c, int p) {
type = t;
capacity = c;
price = p;
}
/** Ausgabe der Behälter-Daten */
void printContainer() {
System.out.print("Art des Behälters: ");
System.out.println(type);
System.out.print("Kapazität des Behälters: ");
System.out.println(capacity);
System.out.print("Preis des Behälters: ");
System.out.println(price);
}
}
weiterhin eine ContainerType Klasse
Java:
/**
*
* Aufzählung der Behälter-Arten.
*
* @author ---
*
*/
enum ContainerType {
BEAKER,CUP,GLASS;
}
Es geht um ein Kaffeegetränk, welches verschiedene Attribute bekommen soll wie zB Starker/Mittlerer/Schwacher Espresso , Große/mittlere/kleine Tasse/Glas/Becher, Milch , Zucker/Sirup/Süßstoff usw.
Die ersten Aufgaben beinhalten lediglich die Erstellung der Klassen und den Abruf der einzelnen über die Main-Klasse wie zb Abrufen des Containers sowie dessen Ausgabe
Java:
Container testContainer = new Container(ContainerType.CUP, ContainerCapacity.SMALL, 1);
testContainer.printContainer()
Dabei kommen dann Dinge raus wie:
BehälterArt=CUP
BehälterKapazität=SMALL
Preis=1
das funktioniert alles mit den jeweiligen Klassen.
Nun müssen wir eine Coffee Klasse erstellen und über diese, alle Daten des gesamten Kaffe-getränks auslesen.
dh es soll etwas in der Ausgabe stehen wie:
Tasse(mittel), Espresso(schwach),Milch, Zucker
Nun, bei meiner Ausführung gibt er mir in der Konsole folgendes aus:
gewõhlter Behõlter: Container@36a06816
gewõhlte Espresso-Stõrke: Espresso@5d11985e
Milk@2e2a730e
Milk@64e7b3cf
S³▀ungsmittel: Sweetener@27ce0eca
Sweetener@492d0430
Preis des Getrõnks: 1
Preis von einer Portion Milch: 1
Art des Behõlters: CUP
Kapazitõt des Behõlters: MEDIUM
Preis des Behõlters: 1
Art des S³▀ungsmittels: SYRUP
Preis: 1
wobei der untere Teil noch das Auslesen der einfachen Aufgaben war, wie oben beschrieben. Habe ich nur rein um zu sehen obs denn noch klappt.
Kann mir vllt jemand einen Tipp geben , wie ich statt zb
gewählter Behälter: Container@36a06816
-> gewählter Behälter: CUP ( LARGE ) oder etwas wie
gewählter Behälter :
Art : CUP
Kapazität: LARGE
bekomme?
Zuletzt bearbeitet: