Vererbung Sandwich Creator

Clone

Mitglied
Hi@all

ich hab da eine Aufgabe in Informatik bekommen, wo ich nicht weiterkomme.....
Ich hoffe ihr könnt mir da ein wenig behilflich sein :)

// Soweit ich weiß, gibt es eine reinfolge von zutaten an und es gibt glaub ich aus was man aufm Sandwich haben will...Mehr dazu fällt mir nicht ein wenn ich mir den Code so angucke...


sdc10033l.jpg


PS. Die Aufgabenstellung steht im Bild

MfG
 
Zuletzt bearbeitet:

fastjack

Top Contributor
mal Dir doch die Klassenhierachie auf, dann wird es einfacher.

edit: also wer erbt von wem und so weiter, was wird überschrieben und wie ?
 
S

SlaterB

Gast
man kann doch alles alles als Java-Programm eintippen und anschauen? dann hast du die Lösung für speziell dieses Beispiel

wie es allgemein zu der Lösung kommt solltest du besser lernen, aber doch kaum durch Erklärungen hier geschehen,
was ist ein Konstruktor, ob und wie werden bei Vererbung Konstruktoren der Superklassen durchlaufen usw., das ist alles Wissen zum Lernen
 

Andi_CH

Top Contributor
Oh mein Gott - ich kann ja noch IMPLIZIT darum bitten, dass es mir jemand sagt wo steht, dass das so ist?

Ich gehe halt davon aus, dass die Leute mitdenken und einfah so ihre Gedanken posten. :bahnhof:
 
S

SlaterB

Gast
falls das jetzt auch von dir eine Frage war, dann gilt immer noch
wie es allgemein zu der Lösung kommt solltest du besser lernen, aber doch kaum durch Erklärungen hier geschehen,
was ist ein Konstruktor, ob und wie werden bei Vererbung Konstruktoren der Superklassen durchlaufen usw., das ist alles Wissen zum Lernen

:bae:

wo das steht dürfte doch klar sein
 

Andi_CH

Top Contributor
Nein es ist nicht klar wo das steht - Google: Ungefähr 292'000 Ergebnisse (0.18 Sekunden)

Frage 1: Es gibt X Leute hier die einfach mal sein eine Aussage hinknallen und keiner regt sich auf - was ist an mir so speiziell? Dass ich mit meinem Wissen halt neben dem Mainstream hier liege? Von Java sehr wenig weiss dafür von anderen Gebieten viel?

Ein kurzer Satz mit einem Link hätte gereicht, aber nein ... und jetzt kommt meine zweite
Frage 2: WER zieht jetzt diesen Thread hier unnötigerweise in die Länge?

Verd.... wo ist das Problem?
 
S

SlaterB

Gast
Frage 1: Es gibt X Leute hier die einfach mal sein eine Aussage hinknallen und keiner regt sich auf - was ist an mir so speiziell?
Es gibt X Leute - z.B.?
speziell ist an dir unter anderen 1400 Postings in 6 Monaten, wenn sich das ändern würde wäre viel geschafft,
einem Neuling von 1 Post kann man weniger beibringen bzw. ist zu 90% sowieso bald wieder weg,
bei 90% aller anderen Foren-Teilnehmer über 100 Postings ist es irgendwie nicht nötig zu korrigieren..

Ein kurzer Satz mit einem Link hätte gereicht, aber nein ...
es ist dir nicht möglich so etwas zu finden? ein Java-Buch in korrekter Weise durchzulesen?
weil es so extrem passt poste ich jetzt mal die entsprechende Kapitel-Überschrift
"5.8.6 Konstruktoren in der Vererbung und »super()«"
über google ist das Buch zu finden,
Achtung, Kapitel bezieht sich nur auf die Vererbungsaspekte, vorher besser lernen, was ein Konstruktor allgemein ist,
 
Zuletzt bearbeitet von einem Moderator:
T

Tomate_Salat

Gast
mein Güte, Andi, du musst doch nicht überall einfach deine Gedanken posten ;)

Als drauf, immer auf die mit dem exotischen Tastaturlayout :joke: :D . Ich kann auch nicht nachvollziehen was daran so schlimm war. Andi's aussage hat zum Thema gepasst, wo hier das Problem sein soll, kann ich beim besten willen nicht erkennen :bahnhof:.
 

Andi_CH

Top Contributor
Thread kannn geclosed werden.

Danke euch allen für die Hilfe...Ich hab zwar nix auf die Reihe bekommen aber egal :D

peace

Die Meinung war, dass du es selbst rausfindest - ich habe bei den Versuchen eine Überraschung erlebt, die noch geklärt werden muss.
Ich bin sehr sicher, dass ihr in der Schule besprochen habt, was passiert wenn new Sandwich() aufgerufen wird.

Wir machen nicht deine Hausaufgaben, aber wenn du konkrete Fragen stellst kommt, im Gegensatz dazu wenn ich Frage, ziemlich sicher eine Anwort. Aber die Frage muss schon sehr konkret sein.

Thread schliessen kannst du selbst - einfach den entsprechenden Knopf drücken.
 
S

SlaterB

Gast
es gibt übrigens keinen Thread schließen-Knopf ;)
aber ich bin schon weg
(und so nach 5 Min. ein Gespräch fortführen ist z.B. auch was anderes als nach 15 Stunden etwas zusätzlich zu bemerken, aber ernsthaft kann ich dazu auch keine Diskussion führen)
 

Clone

Mitglied
Die Meinung war, dass du es selbst rausfindest - ich habe bei den Versuchen eine Überraschung erlebt, die noch geklärt werden muss.
Ich bin sehr sicher, dass ihr in der Schule besprochen habt, was passiert wenn new Sandwich() aufgerufen wird.

Wir machen nicht deine Hausaufgaben, aber wenn du konkrete Fragen stellst kommt, im Gegensatz dazu wenn ich Frage, ziemlich sicher eine Anwort. Aber die Frage muss schon sehr konkret sein.

Thread schliessen kannst du selbst - einfach den entsprechenden Knopf drücken.

Naja auf Fragen&Probleme werden bei uns in der Vorlesung nicht eingegangen.

Ich hab das jetzt alles auch schon selbst auf die Reihe bekommen. Nur ich verstehe das mit dem

Java:
Bread b = new Bread ();
	Cheese c = new Cheese ();
	Lettuce d = new Lettuce ();

nicht. Ich weiß nicht was das bringen soll.
Ist das nicht unnötig?
 
S

SlaterB

Gast
inwiefern unnötig? wieso sollten drei Code-Zeilen an sich unnötig sein?
das ganze Programm, die ganze Schule kann man aus gewisser Sichtweise unnötig erklären,

andererseits ist es eine Übung die dir was beibringen soll, kein kommerzielles Programm, das ist doch nicht unnötig?
genau wie du in Mathematik ohne Ziel 75*45 ausrechnen sollst
 
G

Gast2

Gast
Wir machen nicht deine Hausaufgaben, aber wenn du konkrete Fragen stellst kommt, im Gegensatz dazu wenn ich Frage, ziemlich sicher eine Anwort. Aber die Frage muss schon sehr konkret sein.

Um dir zu antworten:


http://download.oracle.com/javase/tutorial/java/javaOO/constructors.html hat gesagt.:
You don't have to provide any constructors for your class, but you must be careful when doing this. The compiler automatically provides a no-argument, default constructor for any class without constructors. This default constructor will call the no-argument constructor of the superclass. In this situation, the compiler will complain if the superclass doesn't have a no-argument constructor so you must verify that it does. If your class has no explicit superclass, then it has an implicit superclass of Object, which does have a no-argument constructor.

oder aber:

http://openbook.galileocomputing.de/javainsel/javainsel_05_008.htm#mj23635ff54d83b3c53bdfc96dbf5f6f83 hat gesagt.:
In Java sammelt eine Unterklasse zwar automatisch alle sichtbaren Eigenschaften der Oberklasse, aber die Initialisierung der einzelnen Eigenschaften pro Hierarchie ist immer noch Aufgabe der jeweiligen Konstruktoren in der Hierarchie. Um diese Initialisierung sicherzustellen, ruft Java im Konstruktor einer jeden Klasse (ausgenommen java.lang.Object) automatisch den Standard-Konstruktor der Oberklasse auf, damit die Oberklasse »ihre« Attribute initialisieren kann. Es ist dabei egal, ob der Konstruktor in der Unterklasse parametrisiert ist oder nicht; jeder Konstruktor der Unterklasse muss einen der Oberklasse aufrufen.
 

Neue Themen


Oben