Seite 1 von 1

Propro Aufgabe 4, Klasse Computer

Verfasst: 21. Jun 2012 09:39
von Pacman
Hallo! In der Klasse Computer muss man eine Klassenvariablen einführen, die die Anzahl der bisher erzeugten Computer-Objekte mitzählt. Dabei erhält der Konstruktor keine Parameter, das heißt, dass Computer-Objekt keine zusätzliche Information von aussen bekommt, um diese Variable zu ändern. Nehmen wir an, wir haben einen Bot erzeugt:
Computer bot1=new Computer();
und dann den zweiten Bot
Computer bot2=new Computer();
auf welche Weise wird der zweite Bot wissen, dass der erste schon erzeugt ist? Auf welchen Grund wird er den Namen CPU2 generieren?

Danke!

Re: Propro Aufgabe 4, Klasse Computer

Verfasst: 21. Jun 2012 09:57
von mmi1991
Du könntest theoretisch eine statische Variable in Computer anlegen, die beim Aufruf des Konstruktors um eins hochzählt.
Allerdings wird das darauf hinauslaufen, dass der Zähler nicht zurückgesetzt wird, wenn der Computer nicht mehr benötigt wird.
Du kannst zwar finalize() überschreiben und dann wieder runterzählen, aber ob man sich auf den Garbage Collector verlassen kann, ist fraglich ;)

Re: Propro Aufgabe 4, Klasse Computer

Verfasst: 21. Jun 2012 12:12
von Owyn
Sie sollten sich noch mal durchlesen, was eine Klassenvariable und was der Unterschied zu einer Objektvariable ist. Beispiele gibt es in den Folien und in den Übungen.

finalize(), Garbage Collector etc. sind irrelevant.

Gruß,
Christian Heinig

Re: Propro Aufgabe 4, Klasse Computer

Verfasst: 21. Jun 2012 12:26
von Pacman
Vielen Dank!!!Jetzt ist alles klar!