Java Basiscs Verständnisproblem: Aufgabe zu Klassen

the.expert

Lieutenant
Registriert
Jan. 2008
Beiträge
892
Habe Probleme eine Aufgabe zu bearbeiten. Kann mir jemand auf die Sprünge helfen? Was ist mit "bis dato instanziiert" gemeint?


Implementieren Sie eine Klasse Count, die eine statische Methode print() besitzt, welche ausgibt, wie
viele Objekte der Klasse Count bis dato instanziiert worden sind.
 
Es soll gezählt werden wie viele Objekte vom Typ der Klasse erzeugt worden sind. Also wie oft der Konstrutor (zum Beispiel "KlasseX objectXyz = new KlasseX(); )" aufgerufen worden und damit neue Objekte erzeugt worden sind.
 
Klassen sind der "Bauplan" für Objekte. Objekte sind Instanzen einer Klasse, die du z.B. mit "new" erzeugst. Die Methode print () soll ausgeben, wie viele Objekte einer Klasse bereits erstellt wurden.
 
Okay. Vielen vielen Dank für die schnelle Aufklärung!

Also ich soll eine Klasse "Zählen" erstelle, die sich selbst zählt? Beißt sich die Katze da nicht selbst in den Schwanz?
 
Zuletzt bearbeitet:
Also ich hab das so verstanden:

PseudoCode:
Code:
in der main ..
Klasse.print() --> gibt 0 zurück weil es noch kein Objekt "Klasse" gibt
Klasse k1 = new Klasse();
Klasse.print() --> gibt 1 zurück weil es eben jetzt ein Objekt vom Typ Klasse gibt
Klasse k2 = new Klasse();
Klasse.print() -> gibt 2 zurück ...usw

Ich will jetzt gar nicht behaupten, dass das korrekter Java-Code ist aber genau das soll es ja auch nicht sein :)
 
Ich denke mal, dass die Aufgabe helfen soll, den Unterschied zwischen static und non static Methoden und Variablen zu verdeutlichen. Ich würde die Anzahl daher in einer statischen Variable speichern, auf die vom Konstruktor und print zugegriffen werden kann.
 
eine klasse ist wie ein backrezept, je nach dem wieviele kuchen du backst mit diesem rezept, so viele instanzen hast du.
MeineKlasse klasse(backform)=new MeineKlasse();(teig)
 
the.expert schrieb:
Also ich soll eine Klasse "Zählen" erstelle, die sich selbst zählt? Beißt sich die Katze da nicht selbst in den Schwanz?

In der Praxis wird so etwas eher nicht vorkommen. Über den Sinn und Unsinn solcher Aufgabenstellungen lässt sich trefflich sinnieren. Aber die Aufgabe ist klar formuliert und soll dazu dienen, sich mit dem Unterschied zwischen Instanz und statischem Raum von Klassen zu befassen.
 
Zurück
Oben