Threads Die zweite ^^

Miaming

Mitglied
Hallo nocheinmal, ich will ja nicht unbedingt mit Kleinigekeiten negativ auffallen, wenn ich selbst eine Lösung wüsste würde ich hier nicht um Hilfe Fragen. Diese Aufgabe dient als Übung zur Vorbereitung

Und zwar siehts wie folgt aus:

Ein Fahrradhändler verleiht Fahrräder an Ausflugsgruppen. k Fahrräder stehen zum Verleih
zur Verfügung. Eine Gruppe benötigt unterschiedlich viele Fahrräder und gibt sie nach ihrem
Ausflug wieder zurück. Der Ausflug dauert eine fest vorgegebene Zeit. Falls nicht genügend
Fahrräder für eine Gruppe zur Verfügung stehen, muss die ganze Gruppe warten.
In der folgenden Anwendung besitzt der Fahrradverleih 10 Fahrräder. Die Ausflugsgruppe 1
benötigt 5 Fahrräder und ist 10000ms unterwegs, die Ausflugsgruppe 2 benötigt 8 Fahrräder
und ist 20000ms unterwegs, die Ausflugsgruppe 3 benötigt 4 Fahrräder und ist 5000ms un-terwegs. Jede Gruppe trifft zufällig beim Fahrradhändler ein.

a) Gegeben sind die folgenden Klassen. Ergänzen Sie in Java-Syntax, welche Klassen von der
Klasse Thread erben müssen, um das oben beschriebene Anwendungsbeispiel zu implemen-tieren:

Java:
public class Hauptprogramm ___________________________________ { 
// hier ist die Main-Methode implementiert 
} 
 
public class FHandel__________________________________________ { 
// hier sind die Methoden für den Fahrradhändler implementiert 
} 
 
public class Ausflugsgruppe___________________________________ {        
// hier sind die Methoden der Ausflugsgruppen implementiert 
}

Ich habe mich bereits hier durchgelesen Klick

Mein Lösungsansatz dazu wäre, dass ich die beiden Klassen FHandel und Ausflugshandel mit dem Interface runnable implementiere. Also implements runnable. Sowie ich es verstanden habe ist die Implementierung der Schnittstelle vorteilhafter was den allg Einsatz angeht. Nachteilig, dass die Methoden nicht "vererbt" werden logischerweise weil ich ja auch keine Vererbung anstrebe. Allerdings stellt sich nun die Frage ob ich mit meiner Vermutung richtig liege?

Allerdings wäre es auch logisch wenn die Klasse Ausflugsgruppe von FHandel erbt. Und FH Handel das runnable Interface implementiert.

Aber die Main-Methode an sich bräuchte weder das Interface runnable noch eine Vererbung der Klasse Threads, da ich in der Main ja ohnehin die Zuweisung mache. Kann mir jemand vielleicht helfen?

Also ich bin mir unsicher was den Einsatz angeht. Wenn ich nach dem soeben geposteten Link gehe würde ich beide Klassen mit dem Interface runnable realisieren wollen. Die Main Methode würde ich außer Acht lassen.

Wäre dankbar für jede hilfreiche Antwort! Vielen Dank im voraus!
 
Macht nix, fragen ist erlaubt ;)

In der Aufgabe steht, dass du die Klasse Thread verwenden sollst und nicht irgendwas anderes. Ich persönlich würde wohl auch zu Runnable greifen, da es im Grunde egal ist, die Anwendung unterscheidet sich nur geringfügig. Aber man weiß nie, was dabei rauskommt, wenn man sich nicht konkret an die Aufgabenstellung hält.

Welche Klassen von Thread erben, ist natürlich Sache der Implementierung. Das wäre mein Vorschlag.

  • Hauptprogramm sowieso nicht, sollte klar sein.
  • FHandel würde ich wohl auch nicht von Thread ableiten, da das für mich nur eine Zwischenstation ist und es gibt davon auch nur einen einzigen. Warum ihn also mit Multithreading ausstatten?
  • Ausflugsgruppe würde von Thread abgeleitet werden, da die Gruppen parallel existieren und operieren. Die kommen zum FHandel und dann gilt "wer kommt zuerst, mahlt zuerst", der Rest muss dann eben warten. Und Gruppe 1 und 3 können sogar gleichzeitig unterwegs sein, also die Ausflugsgruppen müssen auf jeden Fall multithreaded laufen.
 
Zurück